Пример #1
0
 public void Then_exactly_one_message_is_sent()
 {
     var result = new List<string>();
     var filter = new LastFilter(10);
     filter.Send += m =>
     {
         result.Add(m["x"]);
         return Task.FromResult<object>(null);
     };
     filter.ProcessMessage(new NuntiusMessage() { Properties = { { "x", "1" } } });
     Task.Delay(30).Wait();
     Assert.AreEqual(1, result.Count);
 } 
Пример #2
0
 public void Then_two_proper_messages_are_sent()
 {
     var result = new List<string>();
     var filter = new LastFilter(30);
     filter.Send += m =>
     {
         result.Add(m["x"]);
         return Task.FromResult<object>(null);
     };
     filter.ProcessMessage(new NuntiusMessage() { Properties = { { "x", "1" } } });
     filter.ProcessMessage(new NuntiusMessage() { Properties = { { "x", "2" } } });
     Task.Delay(40).Wait();
     filter.ProcessMessage(new NuntiusMessage() { Properties = { { "x", "3" } } });
     Task.Delay(30).Wait();
     Assert.AreEqual(2, result.Count);
     Assert.AreEqual("2", result[0]);
     Assert.AreEqual("3", result[1]);
 }