Example #1
0
        public async Task Can_poll()
        {
            await target.StartAsync();

            var hasResults = await target.PollNowAsync();

            hasResults.Should().Be(false);
            target.StateModel.Count.Should().Be(0);

            await SaveRawStreamEntryAsync();

            hasResults = await target.PollNowAsync();

            hasResults.Should().Be(true);

            var cp = await engine.GetCurrentEventStoreCheckpointNumberAsync();

            await checkpointPersister.WaitForCheckpointNumberAsync <CatchUpState>(cp);

            target.StateModel.Count.Should().Be(1);

            await SaveRawStreamEntryAsync();

            hasResults = await target.PollNowAsync();

            hasResults.Should().Be(true);

            cp = await engine.GetCurrentEventStoreCheckpointNumberAsync();

            await checkpointPersister.WaitForCheckpointNumberAsync <CatchUpState>(cp);

            target.StateModel.Count.Should().Be(2);
        }
        public async Task Can_save_stream_entry()
        {
            var number = await persistenceEngine.GetCurrentEventStoreCheckpointNumberAsync();

            number.Should().Be(-1);

            var rawStreamEntry = config.WriteModel.GenerateRawStreamEntry();
            await persistenceEngine.SaveStreamEntriesAsync(new[] { rawStreamEntry });

            number = await persistenceEngine.GetCurrentEventStoreCheckpointNumberAsync();

            number.Should().BeGreaterThan(-1);
        }
        public async Task Resets_ReadModel_automatically()
        {
            await target.StartAsync();

            var hasResults = await target.PollNowAsync();

            hasResults.Should().Be(false);

            var model = await Load().ConfigureAwait(false);

            model.Should().Be(null);

            await SaveRawStreamEntryAsync();

            hasResults = await target.PollNowAsync();

            hasResults.Should().Be(true);

            var cp = await engine.GetCurrentEventStoreCheckpointNumberAsync();

            await checkpointPersister.WaitForCheckpointNumberAsync <CatchUpStateWithReadModel>(cp);

            model = await Load().ConfigureAwait(false);

            model.Count.Should().Be(1);

            await SaveRawStreamEntryAsync();

            hasResults = await target.PollNowAsync();

            hasResults.Should().Be(true);

            cp = await engine.GetCurrentEventStoreCheckpointNumberAsync();

            await checkpointPersister.WaitForCheckpointNumberAsync <CatchUpStateWithReadModel>(cp);

            model = await Load().ConfigureAwait(false);

            model.Count.Should().Be(2);
        }
Example #4
0
 public virtual Task <int> GetCurrentCheckpointNumberAsync()
 {
     return(persistenceEngine.GetCurrentEventStoreCheckpointNumberAsync());
 }