Example #1
0
        private EntityRecord create_product_entity_record()
        {
            var values = new Dictionary <string, object>
            {
                { "ProductName", "Test" }
            };

            return(EntityRecordCreator.CreateRecord(_admin.GetEntity <Product>(), values));
        }
Example #2
0
        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);
        }
Example #3
0
        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);
        }
Example #4
0
        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);
        }