コード例 #1
0
        public void simple_reentrancy_detection()
        {
            IActivityMonitor monitor = new ActivityMonitor();

            using (monitor.Output.CreateBridgeTo(TestHelper.ConsoleMonitor.Output.BridgeTarget))
            {
                int clientCount = monitor.Output.Clients.Count;
                Assert.That(monitor.Output.Clients.Count, Is.EqualTo(clientCount));

                BuggyActivityMonitorClient client = new BuggyActivityMonitorClient(monitor);
                monitor.Output.RegisterClient(client);
                Assert.That(monitor.Output.Clients.Count, Is.EqualTo(clientCount + 1));
                monitor.Info().Send("Test");
                Assert.That(monitor.Output.Clients.Count, Is.EqualTo(clientCount));

                Assert.DoesNotThrow(() => monitor.Info().Send("Test"));
            }
        }
コード例 #2
0
        public void simple_reentrancy_detection()
        {
            IActivityMonitor monitor = new ActivityMonitor();
            using( monitor.Output.CreateBridgeTo( TestHelper.ConsoleMonitor.Output.BridgeTarget ) )
            {
                int clientCount = monitor.Output.Clients.Count;
                Assert.That( monitor.Output.Clients.Count, Is.EqualTo( clientCount ) );

                BuggyActivityMonitorClient client = new BuggyActivityMonitorClient( monitor );
                monitor.Output.RegisterClient( client );
                Assert.That( monitor.Output.Clients.Count, Is.EqualTo( clientCount + 1 ) );
                monitor.Info().Send( "Test" );
                Assert.That( monitor.Output.Clients.Count, Is.EqualTo( clientCount ) );

                Assert.DoesNotThrow( () => monitor.Info().Send( "Test" ) );
            }
        }