コード例 #1
0
        public void SyncDisposeTriggersAsyncDispose()
        {
            CheckDisposeStream checkDisposeStream = new CheckDisposeStream();

            CombinedAsyncStream sut = new CombinedAsyncStream(FixedTestData.CreateStreamsAsyncEnumerable(checkDisposeStream));

            sut.Dispose();

            Assert.IsTrue(checkDisposeStream.DisposeCalled);
        }
コード例 #2
0
        public void HappyFlow()
        {
            CheckDisposeStream checkDisposeStream = new CheckDisposeStream();

            CombinedAsyncStream sut = new CombinedAsyncStream(FixedTestData.CreateStreamsAsyncEnumerable(checkDisposeStream));

            FixedTestData.AssertStream(sut, FixedTestData.Structure);

            Assert.IsTrue(checkDisposeStream.DisposeCalled);
        }
コード例 #3
0
        public async Task MultipleDisposeCallsDontBreak()
        {
            CheckDisposeStream checkDisposeStream = new CheckDisposeStream();

            CombinedAsyncStream sut = new CombinedAsyncStream(FixedTestData.CreateStreamsAsyncEnumerable(checkDisposeStream));

            await sut.DisposeAsync();

            sut.Dispose();
            sut.Dispose();
            await sut.DisposeAsync();

            Assert.IsTrue(checkDisposeStream.DisposeCalled);
        }