public void Remove_persisted_entity() { MockEntity entity = new MockEntity(); MockEntity persistedLocation = new MockEntity() { id = int.MaxValue }; persistedLocation.MarkPersisted(); MockEntity persistedContract = new MockEntity() { id = int.MinValue }; persistedContract.MarkPersisted(); MockEntity persistedServiceContractSiteContact = new MockEntity() { IsDeleted = true }; persistedServiceContractSiteContact.MarkPersisted(); entity.RelationalEntities.Add(persistedServiceContractSiteContact); DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(1, entity, () => entity.RelationalEntities, null, null, (o, ae) => true, (e, ae) => true); MockEntity removed = manager.Remove(persistedLocation); Assert.AreEqual(1, entity.RelationalEntities.Count); Assert.AreEqual(persistedServiceContractSiteContact, removed); Assert.IsTrue(removed.IsDeleted); }
public void Contains_empty_collection() { MockEntity entity = new MockEntity() { id = int.MinValue }; DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(1, entity, () => entity.RelationalEntities, null, null, (o, ae) => true, (e, ae) => true); Assert.IsFalse(manager.Contains(new MockEntity())); }
public void Contains_false() { MockEntity entity = new MockEntity() { id = int.MinValue }; Func <IDbEntity, MockEntity, bool> matchesAssociativeEntityOwner = (o, ae) => false; Func <MockEntity, MockEntity, bool> matchesEntity = (e1, ae) => false; DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(1, entity, () => entity.RelationalEntities, null, null, matchesAssociativeEntityOwner, matchesEntity); entity.RelationalEntities.Add(new MockEntity()); Assert.IsFalse(manager.Contains(new MockEntity())); }
public void Get() { MockEntity entity = new MockEntity() { id = int.MinValue }; DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(1, entity, () => entity.RelationalEntities, null, null, (o, ae) => true, (e, ae) => true); MockEntity associativeEntity = new MockEntity(); entity.RelationalEntities.Add(associativeEntity); Assert.AreEqual(associativeEntity, manager.Get(new MockEntity())); }
public void Get_deleted_entity() { MockEntity entity = new MockEntity() { id = int.MinValue }; DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(1, entity, () => entity.RelationalEntities, null, null, (o, ae) => true, (e, ae) => true); entity.RelationalEntities.Add(new MockEntity() { IsDeleted = true }); Assert.IsNull(manager.Get(new MockEntity())); }
public void Add_new_entity() { int userId = 1; bool isSetForeignKeysActionCalled = false; bool isSetForeignEntitiesActionCalled = false; Action <IDbEntity, MockEntity, MockEntity> setForeignKeys = (o, e, ae) => { isSetForeignKeysActionCalled = true; }; Action <IDbEntity, MockEntity, MockEntity> setForeignEntities = (o, e, ae) => { isSetForeignEntitiesActionCalled = true; }; MockEntity entity = new MockEntity(); DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(userId, entity, () => entity.RelationalEntities, setForeignEntities, setForeignKeys, null, null); MockEntity newLocation = new MockEntity(); MockEntity added = manager.Add(newLocation); Assert.AreEqual(1, entity.RelationalEntities.Count); Assert.AreEqual(added, entity.RelationalEntities.First()); Assert.IsTrue(isSetForeignEntitiesActionCalled); Assert.IsTrue(isSetForeignKeysActionCalled); Assert.IsFalse(added.IsDeleted); Assert.AreEqual(userId, added.CreatedByID); Assert.AreEqual(userId, newLocation.CreatedByID); }
public void ReAdd_previously_deleted_entity() { int userId = 1; bool isSetForeignKeysActionCalled = false; bool isSetForeignEntitiesActionCalled = false; Action <IDbEntity, MockEntity, MockEntity> setForeignKeys = (o, e, ae) => { isSetForeignKeysActionCalled = true; }; Action <IDbEntity, MockEntity, MockEntity> setForeignEntities = (o, e, ae) => { isSetForeignEntitiesActionCalled = true; }; MockEntity entity = new MockEntity(); DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(userId, entity, () => entity.RelationalEntities, setForeignEntities, setForeignKeys, (o, ae) => true, (e, ae) => true); MockEntity persistedLocation = new MockEntity() { id = int.MaxValue }; persistedLocation.MarkPersisted(); MockEntity persistedContract = new MockEntity() { id = int.MinValue }; persistedContract.MarkPersisted(); MockEntity persistedServiceContractSiteContact = new MockEntity() { IsDeleted = true }; persistedServiceContractSiteContact.MarkPersisted(); entity.RelationalEntities.Add(persistedServiceContractSiteContact); MockEntity added = manager.Add(persistedLocation); Assert.AreEqual(1, entity.RelationalEntities.Count); Assert.AreEqual(added, persistedServiceContractSiteContact); Assert.IsFalse(isSetForeignEntitiesActionCalled); Assert.IsFalse(isSetForeignKeysActionCalled); Assert.IsFalse(added.IsDeleted); Assert.AreNotEqual(userId, added.CreatedByID); }
public void Remove_new_entity() { MockEntity entity = new MockEntity(); MockEntity newLocation = new MockEntity() { id = int.MaxValue }; MockEntity newContract = new MockEntity() { id = int.MinValue }; MockEntity newServiceContractSiteContact = new MockEntity() { IsDeleted = true }; entity.RelationalEntities.Add(newServiceContractSiteContact); DbEntityAssociativeCollectionManager <MockEntity, MockEntity> manager = new DbEntityAssociativeCollectionManager <MockEntity, MockEntity>(1, entity, () => entity.RelationalEntities, null, null, (o, ae) => true, (e, ae) => true); MockEntity removed = manager.Remove(newLocation); Assert.AreEqual(0, entity.RelationalEntities.Count); Assert.AreEqual(newServiceContractSiteContact, removed); }