private EntityRecord create_product_entity_record() { var values = new Dictionary <string, object> { { "ProductName", "Test" } }; return(EntityRecordCreator.CreateRecord(_admin.GetEntity <Product>(), values)); }
public void creates_record_with_many_to_one_foreign_property() { register_default_entities(); var productId = DB.Products.Insert(ProductName: "Product").ProductID; var categoryEntity = _admin.GetEntity <Category>(); var entityRecord = EntityRecordCreator.CreateRecord(categoryEntity, new Dictionary <string, object>()); entityRecord["CategoryName"].Raw = "Category"; entityRecord["Products"].Values.Add(productId); _creator.Create(entityRecord); var categories = (List <dynamic>)DB.Categories.All().ToList(); Assert.Equal(1, categories.Count); var products = (List <dynamic>)DB.Products.All().ToList(); Assert.Equal(1, products.Count); Assert.Equal(categories.First().CategoryID, products.First().CategoryID); }
public void creates_record_and_does_not_create_entity_change_when_is_not_added() { register_default_entities(); var values = new Dictionary <string, object> { { "ProductName", "Product" }, { "Discontinued", false } }; _creator.Create(EntityRecordCreator.CreateRecord(_productEntity, values)); var products = DB.Products.All().ToList(); Assert.Equal(1, products.Count); A.CallTo(() => _user.CurrentUserName()).MustNotHaveHappened(); var changes = DB.EntityChanges.All().ToList(); Assert.Equal(0, changes.Count); }
public void creates_record_with_one_to_many_foreign_property() { Entity <Category> .Register(); register_default_entities(); var categoryId = DB.Categories.Insert(CategoryName: "Category").CategoryID; var values = new Dictionary <string, object> { { "ProductName", "Product" }, { "Discontinued", false }, { "CategoryID", categoryId } }; _creator.Create(EntityRecordCreator.CreateRecord(_productEntity, values)); var products = (List <dynamic>)DB.Products.All().ToList(); Assert.Equal(1, products.Count); Assert.Equal(categoryId, products.First().CategoryID); }
public void when_added_value_to_many_to_many_property__many_to_many_has_one_record() { var employeeEntity = _admin.GetEntity <Employee>(); var employeeTerritoryEntity = _admin.GetEntity <EmployeeTerritory>(); var territoryId = new_territory(); var data = new Dictionary <string, object>(); data["FirstName"] = "Test"; data["LastName"] = "Test"; var record = EntityRecordCreator.CreateRecord(employeeEntity, data); record.Values.FirstOrDefault(x => x.Property.Name == "Photo").DataBehavior = DataBehavior.Skip; var manyToManyPropertyValue = record.Values.FirstOrDefault(x => x.Property.ForeignEntity == employeeTerritoryEntity); manyToManyPropertyValue.Values.Add(territoryId); _creator.Create(record); var employeeTerritoryCount = DB.EmployeeTerritories.GetCount(); Assert.Equal(1, employeeTerritoryCount); }