/Framework/src/Ncqrs.Tests/Eventing/Storage/InMemoryEventStoreSpecs.cs
http://github.com/ncqrs/ncqrs · C# · 55 lines · 43 code · 12 blank · 0 comment · 0 complexity · 0c1e509d614d99f167ec8f1be4e88aa8 MD5 · raw file
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using FluentAssertions;
- using Ncqrs.Eventing;
- using Ncqrs.Eventing.Sourcing;
- using Xunit;
- using Ncqrs.Eventing.Storage;
-
- namespace Ncqrs.Tests.Eventing.Storage
- {
-
- public class InMemoryEventStoreSpecs
- {
- public class SomethingDoneEvent
- {
- }
-
- [Fact]
- public void When_getting_all_event_from_a_non_existing_event_source_the_result_should_be_empty()
- {
- var eventSourceId = Guid.NewGuid();
- var store = new InMemoryEventStore();
-
- var events = store.ReadFrom(eventSourceId, long.MinValue, long.MaxValue);
-
- events.Should().NotBeNull();
- events.Should().BeEmpty();
- }
-
- [Fact]
- public void When_getting_all_event_from_an_existing_event_source_the_result_should_be_all_events_stored_for_that_event_source()
- {
- var eventSourceId = Guid.NewGuid();
-
- var stream1 = new UncommittedEventStream(Guid.NewGuid());
- stream1.Append(new UncommittedEvent(Guid.NewGuid(), eventSourceId, 1, 0, DateTime.UtcNow, new object(), new Version(1, 0)));
- stream1.Append(new UncommittedEvent(Guid.NewGuid(), eventSourceId, 2, 0, DateTime.UtcNow, new object(), new Version(1, 0)));
-
- var stream2 = new UncommittedEventStream(Guid.NewGuid());
- stream2.Append(new UncommittedEvent(Guid.NewGuid(), eventSourceId, 3, 1, DateTime.UtcNow, new object(), new Version(1, 0)));
- stream2.Append(new UncommittedEvent(Guid.NewGuid(), eventSourceId, 4, 1, DateTime.UtcNow, new object(), new Version(1, 0)));
- stream2.Append(new UncommittedEvent(Guid.NewGuid(), eventSourceId, 5, 1, DateTime.UtcNow, new object(), new Version(1, 0)));
-
- var store = new InMemoryEventStore();
-
- store.Store(stream1);
- store.Store(stream2);
-
- var events = store.ReadFrom(eventSourceId, long.MinValue, long.MaxValue);
-
- events.Count().Should().Be(5);
- }
- }
- }