public void It_wont_process_any_incomming_message_until_we_call_StartListening()
 {
     var serializer = new NotNullable<IStringSerializer>(new JsonSerializer());
     var forwarderFactory = new MessageForwarderFactoryFake();
     var serviceEvents = new ServiceEvents();
     var sut = new MessageForwardingService(serializer, serviceEvents, forwarderFactory);
     serviceEvents.SavedIncommingMessage(GenerateMessages(1, "ATopic").Value.ElementAt(0));
     Assert.False(forwarderFactory.Forwarders.ContainsKey("ATopic"));
 }
 public void when_called_StartListening_it_will_process_every_incommingEvent()
 {
     var serializer = new NotNullable<IStringSerializer>(new JsonSerializer());
     var forwarderFactory = new MessageForwarderFactoryFake();
     var serviceEvents = new ServiceEvents();
     var sut = new MessageForwardingService(serializer, serviceEvents, forwarderFactory);
     sut.StartListening();
     serviceEvents.SavedIncommingMessage(GenerateMessages(1, "ATopic").Value.ElementAt(0));
     Assert.NotNull(forwarderFactory.Forwarders["ATopic"]);
     forwarderFactory.Forwarders["ATopic"].Received(1).AddMessage(Arg.Any<string>());
 }
示例#3
0
        public void When_SavedIncommingMessage_it_notifies_subscriptor()
        {
            List<string> messages = new List<string>();
            List<string> savedMessages = new List<string>();
            (4).Times(new Action(() =>
            {
                messages.Add(StringExtension.RandomString() );
            }));
            var sut = new ServiceEvents();
            sut.SavedIncommingMessageSequence.Subscribe(s => savedMessages.Add(s.Value));
            messages.ForEach(s=>sut.SavedIncommingMessage(s));
            Assert.Equal(messages.Count, savedMessages.Count);
            messages.ForEach(m => Assert.True(savedMessages.Contains(m)));

        }