コード例 #1
0
            public void Should_Close_Window_After_Sending_Message()
            {
                bool called = false;

                // Given
                var provider = new FakeProviderService();
                provider.RegisterProvider(typeof(FakeProvider));
                provider.RegisterConfiguration(typeof(FakeProvider), new FakeConfiguration(true));
                provider.RegisterListener(typeof(FakeProvider), new Mock<ITailStreamListener>().Object);
                provider.RegisterContext(typeof(FakeProvider), new Mock<ITailStreamContext>().Object);

                var eventAggregator = new Mock<IEventAggregator>();
                eventAggregator.Setup(x => x.Publish(It.IsAny<StartListeningEvent>()))
                    .Callback(() => called = true);

                var viewModel = new StreamConfigurationViewModel(provider, eventAggregator.Object);
                viewModel.SelectedProvider = new TailProviderInfo("Provider", typeof(FakeProvider));

                // When
                viewModel.OpenStream();

                // Then
                Assert.True(called);
                Assert.False(viewModel.IsActive);
            }