public async Task Message_should_be_retried_five_times() { retries = 0; var bus = BusFactory.Address("test") .UseTestBroker() .CreateBus(); bus.Start().Wait(); await bus.Send("test", new TestMessage { ThrowError = true }); Assert.Equal(5, retries); }
public async Task Message_is_handled() { messageHandled = false; var bus = BusFactory.Address("test") .UseTestBroker() .CreateBus(); await bus.Start(); await bus.Send("test", new TestMessage()); Assert.True(messageHandled); }
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureServices((hostContext, services) => { services.AddHostedService <Worker>(); services.AddScoped <IMyClass, MyClass>(); var bus = BusFactory .Address("diceroller-worker") .UseRabbitMQ() .AddServices(services) .CreateBus(); services.AddSingleton(bus); });
static async Task Main(string[] args) { var bus = BusFactory .Address("diceroller-statistics") .UseRabbitMQ() .CreateBus(); await bus.Subscribe("diceroller-worker", "DiceRolled"); await bus.Start(); Console.Title = "DiceRoller Statistics"; Console.Read(); await bus.Unsubscribe("diceroller-worker", "DiceRolled"); await bus.Stop(); }
static async Task Main(string[] args) { var bus = BusFactory .Address("diceroller-client") .UseRabbitMQ() .CreateBus(); Console.Title = "DiceRoller Client"; var keyInfo = new ConsoleKeyInfo(); while (keyInfo.Key != ConsoleKey.Escape) { Console.WriteLine("Press <enter> to send RollTheDice"); keyInfo = Console.ReadKey(); Console.WriteLine("sending"); try { var stopwatch = new Stopwatch(); stopwatch.Start(); await bus.Send("diceroller-worker", new RollTheDice { Attempts = 10 }); stopwatch.Stop(); System.Console.WriteLine("Outer:" + stopwatch.ElapsedMilliseconds); } catch (Exception e) { System.Console.WriteLine(e); } } await bus.Stop(); }