示例#1
0
        public void Should_publish_to_all_handlers()
        {
            var handler = new TestAggregateDidSomethingHandler();

            _bus.RegisterHandler <TestAggregateDidSomething>(handler.Handle, handler.GetType());
            _bus.RegisterHandler <TestAggregateDidSomething>(handler.Handle, handler.GetType());
            _bus.Publish(new TestAggregateDidSomething());
            Assert.AreEqual(2, handler.TimesRun);
        }
        public async Task Should_publish_to_all_handlers()
        {
            var handler = new TestAggregateDidSomethingHandler();

            _bus.RegisterHandler <TestAggregateDidSomething>(handler.Handle);
            _bus.RegisterHandler <TestAggregateDidSomething>(handler.Handle);
            await _bus.Publish(new TestAggregateDidSomething());

            Assert.Equal(2, handler.TimesRun);
        }
        public void SubscribedHandlerShouldHandle()
        {
            InProcessBus sut = new InProcessBus();
            IEventHandler <AccountCreatedEvent> fakeHandler = A.Fake <IEventHandler <AccountCreatedEvent> >();
            IDisposable subscription = sut.Subscribe(fakeHandler);

            sut.Publish(new AccountCreatedEvent(Guid.NewGuid(), 0, Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), false));

            A.CallTo(() => fakeHandler.Handle(A <AccountCreatedEvent> .Ignored)).MustHaveHappened();
        }
示例#4
0
        public void HandledPublishShouldBeSent()
        {
            sut.Publish(new SimpleAggregateCreated(Guid.NewGuid(), DateTime.Now));

            A.CallTo(() => createdHandler.Handle(A <SimpleAggregateCreated> .Ignored)).MustHaveHappened(Repeated.Exactly.Once);
        }