public void CanRestoreFormDynamicSnapshot() { // We assert in each step!!! var target = Assembly.LoadFrom("Ncqrs.Eventing.Sourcing.Snapshotting.DynamicSnapshot.Tests.dll"); var snapshotsAsm = DynamicSnapshot.CreateAssemblyFrom(target); Castle.Windsor.IWindsorContainer container = new Castle.Windsor.WindsorContainer(); container.Register(Component.For <Foo>().AsSnapshotable()); dynamic proxy = container.Resolve <Foo>(); proxy.ChangeTitle(OriginalTitle); Assert.AreEqual(OriginalTitle, proxy.Tittle); var snapshot = proxy.CreateSnapshot(); Assert.AreEqual(OriginalTitle, proxy.Tittle); proxy.ChangeTitle(ChangedTitle); Assert.AreEqual(ChangedTitle, proxy.Tittle); proxy.RestoreFromSnapshot(snapshot); Assert.AreEqual(OriginalTitle, proxy.Tittle); }
public void BuildDynamicSnapshotAssembly() { var target = Assembly.LoadFrom("Ncqrs.Eventing.Sourcing.Snapshotting.DynamicSnapshot.Tests.dll"); var snapshotsAsm = DynamicSnapshot.CreateAssemblyFrom(target); var snapshotTypesCount = snapshotsAsm.GetTypes().Length; Assert.AreEqual(3, snapshotTypesCount); }