//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void closeShouldWaitAllOperationToFinish() public virtual void CloseShouldWaitAllOperationToFinish() { // given ClientA.acquireShared(LockTracer.NONE, NODE, 1L); ClientA.acquireShared(LockTracer.NONE, NODE, 3L); ClientB.acquireShared(LockTracer.NONE, NODE, 1L); AcquireShared(ClientC, LockTracer.NONE, NODE, 2L); AcquireExclusive(ClientB, LockTracer.NONE, NODE, 1L).callAndAssertWaiting(); AcquireExclusive(ClientC, LockTracer.NONE, NODE, 1L).callAndAssertWaiting(); // when ClientB.close(); ClientC.close(); ClientA.close(); // all locks should be closed at this point regardless of // reader/writer waiter in any threads // those should be gracefully finish and client should be closed LockCountVisitor lockCountVisitor = new LockCountVisitor(); Locks.accept(lockCountVisitor); assertEquals(0, lockCountVisitor.LockCount); }