Verify serialisation of LockLevel
For the new JSON instance Ganeti.Locking.Locks.LockLevel, verify thatreadJSON . showJSON = Ok.
Signed-off-by: Klaus Aehlig <aehlig@google.com>Reviewed-by: Petr Pudlak <pudlak@google.com>
Add network locks to Haskell
Ganeti also has a lock level for networks, however this level was forgottenwhen the Ganeti lock hierarchy was implemented in Haskell.
Verify that all lock owners indeed own a lock
Add a test verifying that the list of lock owners is nottoo big in the sense that every subject contained in thatlist owns at least one lock.
Verify the list of lock owners is complete
In other words, verify that if all the lock owners release theirlocks, the empty lock allocation is reached.
Verify the intervall property of GanetiLocks
According to the specification in our design, if A is a grouplock and B belogs to this group, then all locks between A and Bin the lock order also must belong to A. Verify this.
Signed-off-by: Klaus Aehlig <aehlig@google.com>...
Verify implication restriction on locks
As specified in our design, if A is a group lock and Bbelongs to A, then A must be earlier in the lock orderthan B. Verify this property.
Update Arbitrary GanetiLocks
With the extension of Ganeti.Locking.Locks.GanetiLocks to thefull lock hierarchy, also extend the instantiation of Arbitrary.
Verify serialization/deserialization consistency for Locks
As we made Ganeti.Locking.Locks an instance of JSON, we better verifythat we can readJSON what we showJSON.
Add test for serialization of LockAllocation
Verify readJSON . showJSON = Ok for LockAllocations.
Verify the result of opportunistic union
Verify that the result returned by the opportunistic union correctlyreflects the state change: locks not in the result are not changed,locks in the result are as requested.
View revisions
Also available in: Atom