public void DisposableSinksAreDisposedAlongWithRootLogger()
        {
            var sink = new DisposableSink();
            var logger = (IDisposable) new LoggerConfiguration()
                .WriteTo.Sink(sink)
                .CreateLogger();

            logger.Dispose(); 
            Assert.IsTrue(sink.IsDisposed);
        }
        public void DisposableSinksAreDisposedAlongWithRootLogger()
        {
            var sink   = new DisposableSink();
            var logger = (IDisposable) new LoggerConfiguration()
                         .WriteTo.Sink(sink)
                         .CreateLogger();

            logger.Dispose();
            Assert.True(sink.IsDisposed);
        }
        public void DisposableSinksAreNotDisposedAlongWithContextualLoggers()
        {
            var sink = new DisposableSink();
            var logger = (IDisposable) new LoggerConfiguration()
                .WriteTo.Sink(sink)
                .CreateLogger()
                .ForContext<LoggerConfigurationTests>();

            logger.Dispose();
            Assert.IsFalse(sink.IsDisposed);
        }
        public void DisposableSinksAreNotDisposedAlongWithContextualLoggers()
        {
            var sink   = new DisposableSink();
            var logger = (IDisposable) new LoggerConfiguration()
                         .WriteTo.Sink(sink)
                         .CreateLogger()
                         .ForContext <LoggerConfigurationTests>();

            logger.Dispose();
            Assert.False(sink.IsDisposed);
        }