public void Normal_initialization_message_replies_as_initialized_and_request_global_sequence_to_reader() { var reader = CreateTestProbe(); var dispatcher = Sys.ActorOf(EventDispatcher.CreateProps(reader, new GlobalOptions())); reader.ExpectMsg <ReadHighestGlobalSequenceRequest>(); }
IActorRef CreateDispatcher(int initialGlobalSequence, TimeSpan recoveryStartTimeout) { var reader = CreateTestReader(initialGlobalSequence); var dispatcher = Sys.ActorOf(EventDispatcher.CreateProps(reader, new GlobalOptions { DispatcherRecoveryTimeout = recoveryStartTimeout })); return(dispatcher); }
public void Dispatcher_requests_correct_missing_events_to_reader() { var reader = CreateTestReader(0); var dispatcher = Sys.ActorOf(EventDispatcher.CreateProps(reader, new GlobalOptions { DispatcherRecoveryTimeout = TimeSpan.FromMilliseconds(100) })); reader.ExpectMsg <ReadHighestGlobalSequenceRequest>(); foreach (var i in new[] { 1, 4, 5, 9, 20, 22 }) { dispatcher.Tell(CreateTestEvent(i)); } reader.ExpectMsg <ReadRequest>(r => r.InitialGlobalSequence == 2 && r.Count == 2); reader.ExpectMsg <ReadRequest>(r => r.InitialGlobalSequence == 6 && r.Count == 3); reader.ExpectMsg <ReadRequest>(r => r.InitialGlobalSequence == 10 && r.Count == 10); reader.ExpectMsg <ReadRequest>(r => r.InitialGlobalSequence == 21 && r.Count == 1); }