public void TestThatJournalReaderReadsOneEvent() { var interest = new MockAppendResultInterest <Test1Source, SnapshotState>(); _dispatcher.AfterCompleting(1); interest.AfterCompleting(1); var source = new Test1Source(); var streamName = "123"; var streamVersion = 1; _journal.Append <Test1Source, SnapshotState>(streamName, streamVersion, source, interest, _object); var accessResults = new TestResults().AfterCompleting(1); _journal.JournalReader <TextEntry>("test") .AndThenTo(reader => reader.ReadNext() .AndThenConsume(@event => { accessResults.WriteUsing("addAll", new List <BaseEntry <string> > { @event }); })); Assert.NotNull(accessResults.ReadFrom <int, BaseEntry <string> >("entry", 0)); Assert.Equal("1", accessResults.ReadFrom <int, string>("entryId", 0)); }
public void TestThatJournalAppendsOneEvent() { var interest = new MockAppendResultInterest <Test1Source, SnapshotState>(); _dispatcher.AfterCompleting(1); interest.AfterCompleting(1); var source = new Test1Source(); var streamName = "123"; var streamVersion = 1; _journal.Append <Test1Source, SnapshotState>(streamName, streamVersion, source, interest, _object); Assert.Equal(1, interest.ReceivedAppendsSize); var entries = interest.Entries; var journalData = entries.First(); Assert.NotNull(journalData); Assert.Equal(streamName, journalData.StreamName); Assert.Equal(streamVersion, journalData.StreamVersion); Assert.Equal(Result.Success, journalData.Result); Assert.False(journalData.Snapshot.IsPresent); var sourceList = journalData.Sources; Assert.Single(sourceList); Assert.Equal(source, sourceList.First()); Assert.Equal(1, _dispatcher.DispatchedCount()); var dispatched = _dispatcher.GetDispatched()[0]; Assert.NotEqual(new DateTimeOffset(), dispatched.CreatedOn); Assert.False(dispatched.State.IsPresent); Assert.NotNull(dispatched.Id); var dispatchedEntries = dispatched.Entries; Assert.Single(dispatchedEntries); }