public void InsertOrUpdate_NewObjectProvided_CreatedSuccessfully() { T entity = CreateEntity(); InsertOrUpdate(entity); Console.WriteLine(CreatedEntity.DumpToString()); Assert.True(CreatedEntity.CreatedAt != null); }
public void InsertOrUpdate_RemoveRole_RemovedSuccessfully() { CreateUserWithRole(); CreatedEntity.RemoveRoleByName(TestRoleName); InsertOrUpdate(CreatedEntity); User createdUser = UnitOfWork.GetById <User>(CreatedEntity.Id); Assert.Equal(0, createdUser.UserRoles.Count); }
public async void GetAll_CreatedEntityIdProvided_RetrievedSuccessfully() { T entity = CreateEntity(); InsertOrUpdate(entity); Console.WriteLine(CreatedEntity.DumpToString()); IList <T> allEntities = await unitOfWork.GetAll <T>().ToListAsync(); Assert.NotNull(allEntities.FirstOrDefault(x => x.Id == CreatedEntity.Id)); }
public void GetById_CreatedEntityIdProvided_RetrievedSuccessfully() { T entity = CreateEntity(); InsertOrUpdate(entity); Console.WriteLine(CreatedEntity.DumpToString()); T result = unitOfWork.GetById <T>(CreatedEntity.Id); Assert.NotNull(entity); }
public void Delete_CreatedEntityProvided_DeletedSuccessfully() { T entity = CreateEntity(); InsertOrUpdate(entity); Console.WriteLine(CreatedEntity.DumpToString()); unitOfWork.Delete(CreatedEntity); SaveChanges(); BaseEntity result = unitOfWork.GetById <T>(CreatedEntity.Id); Assert.Null(result); }
private CreatedEntity CreateInstanceGraph(Type resultType, Row row, IEnumerable <ObjectRelation> relations, EntityCache entityCache, string primaryAlias) { CreatedEntity rootObject = null; var relationsList = relations.ToList(); MovePrimaryRelationToFront(primaryAlias, relationsList); foreach (var relation in relationsList) { var instance = CreateInstanceGraph(resultType, row, relation, entityCache, primaryAlias); rootObject = rootObject ?? instance; } return(rootObject); }
private CreatedEntity CreateInstanceGraph(Type resultType, Row row, ObjectRelation relation, EntityCache entityCache, string primaryAlias) { var childType = relation.ChildType; var parentType = relation.ParentType; var child = CreateInstance(childType, row, entityCache, relation.ChildAlias); var parent = CreateInstance(parentType, row, entityCache, relation.ParentAlias); ConnectEntities(relation, child, parent); if (Matches(relation.ChildAlias, primaryAlias)) { return(CreatedEntity.Primary(child)); } if (Matches(relation.ParentAlias, primaryAlias)) { return(CreatedEntity.Primary(parent)); } return(resultType == childType?CreatedEntity.Ordinary(child) : CreatedEntity.Ordinary(parent)); }
private void OnCreatedEntity(ILibraryEntity obj) { CreatedEntity?.Invoke(obj); OnDataUpdated(obj.GetType()); }