protected override void DoSetUp() { events = new ConcurrentQueue<string>(); builtinContainerAdapter = new BuiltinContainerAdapter(); TrackDisposable(builtinContainerAdapter); using (var q = new AzureServiceBusMessageQueue(AzureServiceBusMessageQueueFactory.ConnectionString, QueueName)) { q.Purge(); } Configure.With(builtinContainerAdapter) .Logging(l => l.Console(minLevel: LogLevel.Info)) .Transport(t => t.UseAzureServiceBus(AzureServiceBusMessageQueueFactory.ConnectionString, QueueName, "error")) .Events(e => { e.MessageContextEstablished += (bus, context) => { WriteEvent("msg context established"); context.Disposed += () => { WriteEvent("msg context disposed"); }; }; e.AddUnitOfWorkManager(new EventOutputtingUnitOfWorkManager(text => WriteEvent(text))); }) .CreateBus().Start(1); }
void InitializeBus(int numberOfRetries, BuiltinContainerAdapter adapter, ManualResetEvent poisonEventToSet) { RebusLoggerFactory.Current = new ConsoleLoggerFactory(false) { MinLevel = LogLevel.Warn }; var connectionString = AzureServiceBusMessageQueueFactory.ConnectionString; using (var queue = new AzureServiceBusMessageQueue(connectionString, "test_input")) { queue.Purge(); } Configure.With(adapter) .Transport(t => t.UseAzureServiceBus(connectionString, "test_input", "error")) .Behavior(b => b.SetMaxRetriesFor<FacilityException>(numberOfRetries)) .Events(e => e.PoisonMessage += (bus, message, info) => poisonEventToSet.Set()) .CreateBus() .Start(1); }