コード例 #1
0
        public void Basic_persistence_of_snapshot_memento()
        {
            const string  streamId = "test2_a";
            TestProjector unfolder = new TestProjector();

            unfolder.ApplyEvent(new TestDomainEvent()
            {
                Value = 42
            });
            var      memento = unfolder.GetSnapshot();
            Snapshot s       = new Snapshot(_bucket, streamId, 1, memento);

            sut.Persist(s, _type);

            var reloaded = sut.Load(streamId, 1, _type);

            Assert.That(reloaded, Is.Not.Null);
            Assert.That(reloaded.BucketId, Is.EqualTo(_bucket));
            Assert.That(reloaded.StreamId, Is.EqualTo(streamId));
            Assert.That(reloaded.StreamRevision, Is.EqualTo(1));

            TestProjector unfolderReloaded = new TestProjector();

            unfolderReloaded.Restore((IMementoEx)reloaded.Payload);
            var readmodel = unfolderReloaded.GetProjection();

            Assert.That(readmodel.Sum, Is.EqualTo(42));
        }
コード例 #2
0
        public void Smoke_persistence_of_memento_snapshot()
        {
            TestProjector unfolder = new TestProjector();

            unfolder.ApplyEvent(new TestDomainEvent()
            {
                Value = 42
            });
            var      memento = unfolder.GetSnapshot();
            Snapshot s       = new Snapshot("test1_a", 1, memento);

            sut.Persist(s, _type);
        }