public void Basic_memento_restore() { sut.ApplyEvent(new TestDomainEvent() { Value = 42 }); var memento = sut.GetSnapshot(); var newSut1 = new TestProjector(); newSut1.Restore(memento); var newSut2 = new TestProjector(); newSut2.Restore(memento); newSut1.ApplyEvent(new TestDomainEvent() { Value = 1 }); Assert.That(newSut1.GetProjection().Sum, Is.EqualTo(43)); newSut2.ApplyEvent(new TestDomainEvent() { Value = 2 }); Assert.That(newSut2.GetProjection().Sum, Is.EqualTo(44), "State shared instances between events"); }
public void verify_snapshot_check_version() { var id = new TestEventUnfolderId(1); var unfolder = new TestProjector(); var memento = (EventUnfolderMemento)unfolder.GetSnapshot(); memento.Signature = "OTHER"; //change the version of the memento. Snapshot s = new Snapshot(id, 2, memento); _persister.Load("", 1, "").ReturnsForAnyArgs(s); sut.GetById <TestProjector, TestAggregateQueryModel>(id, 200); _eventStore.Received().OpenStream("BLAH", id, 0, 200); }
public void verify_snapshot_wrong_version_gets_deleted() { var id = new TestEventUnfolderId(1); var unfolder = new TestProjector(); var memento = (EventUnfolderMemento)unfolder.GetSnapshot(); memento.Signature = "OTHER"; //change the version of the memento. Snapshot s = new Snapshot(id, 2, memento); _persister.Load("", 1, "").ReturnsForAnyArgs(s); sut.GetById <TestProjector, TestAggregateQueryModel>(id, 200); _persister.Received().Clear(id, memento.Version, typeof(TestProjector).Name); }
public void SetUp() { sut = new TestProjector(); }