public static void AssertWasPublished <T>(this IBus bus, Expression <Predicate <T> > exp) where T : IMessage { if (typeof(T).IsInterface) { bus.AssertWasCalled(p => p.Publish(Arg <Action <T> > .Matches( actionOnInterface => VerifyAction(actionOnInterface, exp) ))); } else { bus.AssertWasCalled(x => x.Publish(Arg <T[]> .Matches(p => exp.Compile().Invoke(p[0])))); } }
public void OnTimer_should_poll_broker() { bus.Stub(x => x.Publish(Arg <Messages.BrokerStatus> .Is.Anything)).WhenCalled(x => { var status = x.Arguments[0] as Messages.BrokerStatus; if (status == null) { Console.WriteLine("Argument 0 is not BrokerStatus"); return; } Console.WriteLine("IsResponding: {0}", status.IsResponding); foreach (var vhost in status.VHosts) { Console.WriteLine("\tVhost: {0}", vhost.Name); foreach (var connection in vhost.Connections) { Console.WriteLine("\t\tConnection Name: {0}", connection.Name); foreach (var property in connection.ClientProperties) { Console.WriteLine("\t\t\t{0} -> {1}", property.Key, property.Value); } } } }); var brokers = new List <Broker> { new Broker { Url = "http://localhost:15672/", Username = "******", Password = "******", Active = true } }; dbReader.Stub(x => x.Get <Broker> ("Active = TRUE")).Return(brokers); harvesterService.OnTimer(null); bus.AssertWasCalled(x => x.Publish(Arg <Messages.BrokerStatus> .Is.Anything)); }
public static void AssertReply <T>(this IBus bus, Expression <Predicate <T> > exp) where T : IMessage { bus.AssertWasCalled(x => x.Reply(Arg <IMessage[]> .Matches(p => p[0] is T && exp.Compile().Invoke((T)p[0])))); }
public static void AssertWasSentLocally <T>(this IBus bus, Expression <Predicate <T> > exp, Action <IMethodOptions <object> > options) where T : IMessage { bus.AssertWasCalled(x => x.SendLocal(Arg <IMessage[]> .Matches(p => p[0] is T && exp.Compile().Invoke((T)p[0]))), options); }
public static void AssertWasSent <T>(this IBus bus, string adress, Expression <Predicate <T> > exp) where T : IMessage { bus.AssertWasCalled(x => x.Send(Arg <string> .Matches(s => s == adress), Arg <IMessage[]> .Matches(p => p[0] is T && exp.Compile().Invoke((T)p[0])))); }
public static void AssertWasSent <T>(this IBus bus) where T : IMessage { bus.AssertWasCalled(x => x.Send(Arg <IMessage[]> .Matches(p => true))); }
public static void AssertWasPublished <T>(this IBus bus, Expression <Predicate <T> > exp) where T : IMessage { bus.AssertWasCalled(x => x.Publish(Arg <T[]> .Matches(p => exp.Compile().Invoke(p[0])))); }