コード例 #1
0
ファイル: NybusHostTests.cs プロジェクト: simgu/Nybus
        public async Task StopAsync_stops_the_engine_if_started([Frozen] IBusEngine engine, NybusHost sut)
        {
            await sut.StartAsync();

            await sut.StopAsync();

            Mock.Get(engine).Verify(p => p.StopAsync(), Times.Once);
        }
コード例 #2
0
ファイル: NybusHostTests.cs プロジェクト: simgu/Nybus
        public async Task Null_messages_delivered_from_engine_are_discarded([Frozen] IBusEngine engine, NybusHost sut, EventMessage <FirstTestEvent> testMessage, EventReceivedAsync <FirstTestEvent> receivedMessage)
        {
            var subject = new Subject <Message>();

            Mock.Get(engine).Setup(p => p.StartAsync()).ReturnsAsync(subject);

            sut.SubscribeToEvent(receivedMessage);

            await sut.StartAsync();

            subject.OnNext(null);

            await sut.StopAsync();

            Mock.Get(receivedMessage).Verify(p => p(It.IsAny <IDispatcher>(), It.IsAny <IEventContext <FirstTestEvent> >()), Times.Never);
        }
コード例 #3
0
ファイル: NybusHostTests.cs プロジェクト: simgu/Nybus
        public async Task Handler_is_executed_when_eventMessages_are_processed([Frozen] IBusEngine engine, NybusHost sut, EventMessage <FirstTestEvent> testMessage, EventReceivedAsync <FirstTestEvent> receivedMessage)
        {
            var subject = new Subject <Message>();

            Mock.Get(engine).Setup(p => p.StartAsync()).ReturnsAsync(subject);

            sut.SubscribeToEvent(receivedMessage);

            await sut.StartAsync();

            subject.OnNext(testMessage);

            await sut.StopAsync();

            Mock.Get(receivedMessage).Verify(p => p(It.IsAny <IDispatcher>(), It.IsAny <IEventContext <FirstTestEvent> >()), Times.Once);
        }
コード例 #4
0
ファイル: NybusHostTests.cs プロジェクト: simgu/Nybus
        public async Task StopAsync_is_ignored_if_not_started([Frozen] IBusEngine engine, NybusHost sut)
        {
            await sut.StopAsync();

            Mock.Get(engine).Verify(p => p.StopAsync(), Times.Never);
        }