示例#1
0
        public void BatchDispatchWithBatchHandlerFailTest()
        {
            var  dispatcher = new EventDispatcher(_logFactory, "testBC");
            var  handler    = new EventBatchHandler(true);
            bool ack1       = true;
            bool ack2       = true;
            bool ack3       = true;

            dispatcher.Wire("testBC", handler);
            dispatcher.Dispatch("testBC", new[]
            {
                Tuple.Create <object, AcknowledgeDelegate>("a", (delay, acknowledge) => { ack1 = acknowledge; }),
                Tuple.Create <object, AcknowledgeDelegate>("b", (delay, acknowledge) => { ack2 = acknowledge; }),
                Tuple.Create <object, AcknowledgeDelegate>("с", (delay, acknowledge) => { ack3 = acknowledge; })
            });

            Assert.AreEqual(0, handler.HandledEvents.Count, "Some events were handled");
            Assert.False(ack1);
            Assert.False(ack2);
            Assert.False(ack3);
        }
示例#2
0
        public void BatchDispatchWithBatchHandlerOkTest()
        {
            var  dispatcher = new EventDispatcher(_logFactory, "testBC");
            var  handler    = new EventBatchHandler(false);
            bool ack1       = false;
            bool ack2       = false;
            bool ack3       = false;

            dispatcher.Wire("testBC", handler);
            dispatcher.Dispatch("testBC", new[]
            {
                Tuple.Create <object, AcknowledgeDelegate>("a", (delay, acknowledge) => { ack1 = acknowledge; }),
                Tuple.Create <object, AcknowledgeDelegate>("b", (delay, acknowledge) => { ack2 = acknowledge; }),
                Tuple.Create <object, AcknowledgeDelegate>("с", (delay, acknowledge) => { ack3 = acknowledge; })
            });

            Assert.AreEqual(3, handler.HandledEvents.Count, "not all events were handled (exception in first event handling prevented following events processing?)");
            Assert.True(ack1);
            Assert.True(ack2);
            Assert.True(ack3);
        }