public void StreamEventsSinceReturnsWholeEventLogWhenFetchingALargeNumberOfEvents_EnsureBatchingDoesNotBreakThings()
{
using (var eventStore = CreateEventStore())
{
const int moreEventsThanTheBatchSizeForStreamingEvents = SqlServerEventStore.StreamEventsBatchSize + 100;
var aggregateId = Guid.NewGuid();
eventStore.SaveEvents(1.Through(moreEventsThanTheBatchSizeForStreamingEvents).Select(i => new SomeEvent(aggregateId, i)));
var stream = eventStore.ListAllEventsForTestingPurposesAbsolutelyNotUsableForARealEventStoreOfAnySize().ToList();
var currentEventNumber = 0;
stream.Should().HaveCount(moreEventsThanTheBatchSizeForStreamingEvents);
foreach(var aggregateRootEvent in stream)
{
aggregateRootEvent.AggregateRootVersion.Should().Be(++currentEventNumber, "Incorrect event version detected");
}
}
}