public void IsDirty_NothingChanged_False() { var model = new FlatAggregate(); var tracker = new AggregateDirtyTracker <FlatAggregate>(model); Assert.IsFalse(tracker.IsDirty); }
public void IsDirty_ChangeDateTime_True() { var model = new FlatAggregate(); var tracker = new AggregateDirtyTracker <FlatAggregate>(model); model.DateOfBirth = new DateTime(2000, 01, 01); Assert.IsTrue(tracker.IsDirty); }
public void IsDirty_ChangeInt_True() { var model = new FlatAggregate(); var tracker = new AggregateDirtyTracker <FlatAggregate>(model); model.Age = 22; Assert.IsTrue(tracker.IsDirty); }
public void IsDirty_ChangeString_True() { var model = new FlatAggregate(); var tracker = new AggregateDirtyTracker <FlatAggregate>(model); model.Name = "Jane Doe"; Assert.IsTrue(tracker.IsDirty); }
public void Persist_NoneUpdated_DatabaseNotCalled() { var trackedCollection = new TrackedModelCollection <FlatAggregate>(); var model1 = new FlatAggregate(); var model2 = new FlatAggregate(); trackedCollection.Existing(model1); trackedCollection.Existing(model2); var persister = new TrackedModelPersister <FlatAggregate>(); var changes = persister.GetChangesForWrite(trackedCollection).ToArray(); Assert.AreEqual(0, changes.Count()); }
public void Persist_SingleUpdated_Success() { var trackedCollection = new TrackedModelCollection <FlatAggregate>(); var model = new FlatAggregate(); trackedCollection.Existing(model); model.Name = "Jane Doe"; var persister = new TrackedModelPersister <FlatAggregate>(); var changes = persister.GetChangesForWrite(trackedCollection).ToArray(); Assert.AreEqual(1, changes.Count()); AssertModelsUpdated(changes, model.Id); }
private static FlatAggregate GetTrackedFlatAggregate(out TrackedModel <FlatAggregate> trackedModel) { var model = new FlatAggregate() { Id = Guid.NewGuid(), Name = "Bob Smith", Age = 20, DateOfBirth = new DateTime(2000, 01, 01) }; var trackingCollection = new TrackedModelCollection <FlatAggregate>(); trackingCollection.Existing(model); trackedModel = trackingCollection.Single(); return(model); }
public void Persist_TwoUpdated_Success() { var trackedCollection = new TrackedModelCollection <FlatAggregate>(); var model1 = new FlatAggregate(); var model2 = new FlatAggregate(); trackedCollection.Existing(model1); trackedCollection.Existing(model2); model1.Name = "Jane Doe"; model2.Name = "Bob Sinclair"; var persister = new TrackedModelPersister <FlatAggregate>(); var changes = persister.GetChangesForWrite(trackedCollection).ToArray(); Assert.AreEqual(2, changes.Count()); AssertModelsUpdated(changes, model1.Id, model2.Id); }