public void should_dequeue_in_flight_when_finished()
        {
            theController.Start(1200, 0);

            theController.EventRangeUpdated(new EventRange(new ShardName("the projection"), 0, 500));
            theController.LastCommitted.ShouldBe(500);
            theController.InFlightCount.ShouldBe(700);
        }
예제 #2
0
        internal void Apply(ProjectionController controller)
        {
            switch (Type)
            {
            case CommandType.HighWater:
                controller.MarkHighWater(HighWaterMark);
                break;

            case CommandType.RangeCompleted:
                controller.EventRangeUpdated(Range);
                break;

            case CommandType.Start:
                controller.Start(HighWaterMark, LastCommitted);
                break;
            }
        }