public void processes_write_on_write_completed_if_ready() { var linkTo = new EmittedLinkTo( "test_stream", Guid.NewGuid(), "other_stream", CheckpointTag.FromPosition(0, 1100, 1000), null); _stream.EmitEvents(new[] { linkTo }); linkTo.SetTargetEventNumber(1); _stream.Handle(new CoreProjectionProcessingMessage.EmittedStreamWriteCompleted("other_stream")); Assert.AreEqual(1, _readyHandler.HandledStreamAwaitingMessage.Count); Assert.AreEqual( 1, _consumer.HandledMessages.OfType <ClientMessage.WriteEvents>() .OfEventType(SystemEventTypes.LinkTo) .Count()); }
public void publishes_ready_for_checkpoint_on_handling_last_write_events_completed() { var msg = _consumer.HandledMessages.OfType <ClientMessage.WriteEvents>().First(); _stream.Handle(new ClientMessage.WriteEventsCompleted(msg.CorrelationId, msg.EventStreamId, 0)); Assert.AreEqual( 1, _readyHandler.HandledMessages.OfType <CoreProjectionProcessingMessage.ReadyForCheckpoint>().Count()); }
public void publishes_second_write_events_after_handling_write_completed() { var msg = _publisher.Messages.OfType <ClientMessage.WriteEvents>().First(); _stream.Handle(new ClientMessage.WriteEventsCompleted(msg.CorrelationId, msg.EventStreamId, 0)); Assert.AreEqual(2, _publisher.Messages.OfType <ClientMessage.WriteEvents>().Count()); }
public void should_not_retry_the_read_upon_the_read_timing_out() { var scheduledReadTimeout = _consumer.HandledMessages.OfType <TimerMessage.Schedule>().First().ReplyMessage as ProjectionManagementMessage.Internal.ReadTimeout; _stream.Handle(scheduledReadTimeout); var readEventsBackwards = _consumer.HandledMessages.OfType <ClientMessage.ReadStreamEventsBackward>().Where(x => x.EventStreamId == TestStreamId); Assert.AreEqual(1, readEventsBackwards.Count()); }
public void setup() { _readyHandler = new TestCheckpointManagerMessageHandler();; _stream = new EmittedStream("test", CheckpointTag.FromPosition(0, -1), _bus, _readyHandler, 50); _stream.Start(); _stream.EmitEvents( new[] { new EmittedEvent("test", Guid.NewGuid(), "type", "data", CheckpointTag.FromPosition(10, 5), null) }); var msg = _consumer.HandledMessages.OfType<ClientMessage.WriteEvents>().First(); _stream.Handle(new ClientMessage.WriteEventsCompleted(msg.CorrelationId, msg.EventStreamId, 0)); _stream.Checkpoint(); }
public void setup() { _publisher = new FakePublisher(); _readyHandler = new TestMessageHandler<ProjectionMessage.Projections.ReadyForCheckpoint>(); _stream = new EmittedStream("test", _publisher, _readyHandler, false, 50); _stream.Start(); _stream.EmitEvents( new[] {new EmittedEvent("stream", Guid.NewGuid(), "type", "data")}, CheckpointTag.FromPosition(-1, -1)); var msg = _publisher.Messages.OfType<ClientMessage.WriteEvents>().First(); _stream.Handle(new ClientMessage.WriteEventsCompleted(msg.CorrelationId, msg.EventStreamId, 0)); _stream.Checkpoint(); }
public void setup() { _readyHandler = new TestCheckpointManagerMessageHandler();; _stream = new EmittedStream("test", CheckpointTag.FromPosition(0, -1), _bus, _readyHandler, 50); _stream.Start(); _stream.EmitEvents( new[] { new EmittedEvent("test", Guid.NewGuid(), "type", "data", CheckpointTag.FromPosition(10, 5), null) }); var msg = _consumer.HandledMessages.OfType <ClientMessage.WriteEvents>().First(); _stream.Handle(new ClientMessage.WriteEventsCompleted(msg.CorrelationId, msg.EventStreamId, 0)); _stream.Checkpoint(); }
public void setup() { _publisher = new FakePublisher(); _readyHandler = new TestMessageHandler <ProjectionMessage.Projections.ReadyForCheckpoint>(); _stream = new EmittedStream("test", _publisher, _readyHandler, false, 50); _stream.Start(); _stream.EmitEvents( new[] { new EmittedEvent("stream", Guid.NewGuid(), "type", "data") }, CheckpointTag.FromPosition(-1, -1)); var msg = _publisher.Messages.OfType <ClientMessage.WriteEvents>().First(); _stream.Handle(new ClientMessage.WriteEventsCompleted(msg.CorrelationId, msg.EventStreamId, 0)); _stream.Checkpoint(); }