public void SubscriptionWorks() { var inputQueueName = "test.subscriber"; var messageQueue = new MsmqMessageQueue(inputQueueName).PurgeInputQueue(); serializer = new JsonMessageSerializer(); var subscriptionStorage = new InMemorySubscriptionStorage(); var bus = new RebusBus(new HandlerActivatorForTesting(), messageQueue, messageQueue, subscriptionStorage, new SagaDataPersisterForTesting(), this, serializer, new TrivialPipelineInspector()); bus.Start(); bus.Subscribe<TheMessage>("test.subscriber"); Thread.Sleep(500); Assert.AreEqual("test.subscriber", subscriptionStorage.GetSubscribers(typeof(TheMessage))[0]); }
public void SubscriptionWorks() { // arrange var subscriptionStorage = new InMemorySubscriptionStorage(); // publisher CreateBus(PublisherInputQueueName, new HandlerActivatorForTesting(), subscriptionStorage, new InMemorySagaPersister(), "error").Start(1); // subscriber var subscriber = CreateBus(SubscriberInputQueueName, new HandlerActivatorForTesting()).Start(1); // act subscriber.Subscribe<TheMessage>(); Thread.Sleep(500); // assert var subscribers = subscriptionStorage.GetSubscribers(typeof (TheMessage)); subscribers.Length.ShouldBe(1); subscribers[0].ShouldBe(SubscriberInputQueueName); }