public void PollGetThrows() { var wait = TimeSpan.FromSeconds(10); var msg = new BrokeredMessage("data"); var queue = Substitute.For <IBusMessageReciever>(); queue.ServerWaitTime.Returns(wait); queue.Get(wait).Returns <BrokeredMessage>(x => { throw new ApplicationException(); }); var poller = new BusPoller <object>(queue); Assert.That(async() => await poller.Poll(), Throws.TypeOf <ApplicationException>()); }
public async Task PollGetNull() { var wait = TimeSpan.FromSeconds(10); var queue = Substitute.For <IBusMessageReciever>(); queue.ServerWaitTime.Returns(wait); queue.Get(wait).Returns(Task.FromResult <BrokeredMessage>(null)); var poller = new BusPoller <object>(queue); var returned = await poller.Poll(); Assert.IsNull(returned); queue.Received().Get(wait); }
public async Task PollMany() { var wait = TimeSpan.FromSeconds(10); var msg = new BrokeredMessage("data"); var msgs = new List <BrokeredMessage>(3); msgs.Add(msg); msgs.Add(msg); msgs.Add(msg); var queue = Substitute.For <IBusMessageReciever>(); queue.ServerWaitTime.Returns(wait); queue.GetMany(wait, 3).Returns(Task.FromResult <IEnumerable <BrokeredMessage> >(msgs)); var poller = new BusPoller <object>(queue); var returned = await poller.PollMany(3); Assert.IsNotNull(returned); Assert.AreEqual(3, returned.Count()); queue.Received().GetMany(wait, 3); }