public void TestGetItem() { var o = new ObjectStub(); itemStoreMock.Expect(m => m.Count).Return(1); itemStoreMock.Expect(m => m.Fetch()).Return(o); var item = manager.GetItem(); Assert.AreEqual(o, item); }
public T Acquire() { poolSemaphore.WaitOne(); lock (manager) { try { var item = manager.GetItem(); count--; return(item); } catch { poolSemaphore.Release(); throw; } } }