public void ShouldWork() { var store = new EmbeddableDocumentStore { RunInMemory = true }; store.Initialize(); var activator = new HandlerActivatorForTesting(); var checker = new CheckCallsMade(); var bus = CreateBus(Queue, activator, new InMemorySubscriptionStorage(), new RavenDbSagaPersister(store), "errors").Start(1); activator.UseHandler(() => new TheSaga(bus, checker)); bus.Send(new TheFirstMessage()); Thread.Sleep(5000); Assert.IsTrue(checker.First, "First should be called"); Assert.IsTrue(checker.Second, "Second should be called"); Assert.IsTrue(checker.Third, "Third should be called"); }
public TheSaga(IBus bus, CheckCallsMade checker) { this.bus = bus; this.checker = checker; }