コード例 #1
0
        public async Task A_valid_subscriber_is_assigned_as_a_handler_for_its_message_type()
        {
            var dispatcher      = Substitute.For <IDispatcher>();
            var handlerStub     = Substitute.For <IHandleAsync <object> >();
            var eventAggregator = new MessageAggregator();

            Assert.False(eventAggregator.HandlerExistsFor(typeof(object)));

            await eventAggregator.SubscribeAsync(handlerStub);

            Assert.True(eventAggregator.HandlerExistsFor(typeof(object)));
        }
コード例 #2
0
        public async Task A_valid_subscriber_gets_removed_from_the_handler_list()
        {
            var dispatcher      = Substitute.For <IDispatcher>();
            var handlerStub     = Substitute.For <IHandleAsync <object> >();
            var eventAggregator = new MessageAggregator();

            await eventAggregator.SubscribeAsync(handlerStub);

            Assert.True(eventAggregator.HandlerExistsFor(typeof(object)));

            await eventAggregator.UnsubscribeAsync(handlerStub);

            Assert.False(eventAggregator.HandlerExistsFor(typeof(object)));
        }
コード例 #3
0
        public async Task False_returned_when_no_handlers_exist_for_a_given_message()
        {
            var dispatcher      = Substitute.For <IDispatcher>();
            var handlerStub     = Substitute.For <IHandle <object> >();
            var eventAggregator = new MessageAggregator();

            Assert.False(eventAggregator.HandlerExistsFor(typeof(object)));
        }
コード例 #4
0
        public async Task True_returned_when_a_handler_exists_for_a_given_message()
        {
            var dispatcher      = Substitute.For <IDispatcher>();
            var handlerStub     = Substitute.For <IHandle <object> >();
            var eventAggregator = new MessageAggregator();

            await eventAggregator.SubscribeAsync(handlerStub);

            Assert.True(eventAggregator.HandlerExistsFor(typeof(object)));
        }