public void Dispose_Called_ExpectDisposeOnEventStreamIsCalled() { var eventStream = MockEventStream(); var stream = new NEventStoreSessionStream(DummyEventStreamsInSession(), eventStream); stream.Dispose(); eventStream.Received(1).Dispose(); }
public void Dispose_Called_ExpectStreamRemovesItselfFromTheSessionCollection() { var sessionCollection = new ConcurrentDictionary<Guid, IEventStream>(); var stream = new NEventStoreSessionStream(sessionCollection, DummyEventStream()); stream.Dispose(); sessionCollection.Should().BeEmpty(); }
public void Dispose_CalledWheMultipleStreamsInTheSession_ExpectOnlyDisposedStreamIsRemovedFromTheSessionCollection() { var sessionCollection = new ConcurrentDictionary<Guid, IEventStream>(); using (var nonDisposedStream = new NEventStoreSessionStream(sessionCollection, DummyEventStream())) { var stream = new NEventStoreSessionStream(sessionCollection, DummyEventStream()); stream.Dispose(); sessionCollection.Single().Value.Should().BeSameAs(nonDisposedStream); } }