public void DeleteAllItemsInADatabase()
        {
            DatabaseModifier.DeleteAll(typeof(Person));
            int count = CountItemsInDatabase();

            Assert.AreEqual(0, count);
        }
예제 #2
0
        public void AddToDepartment()
        {
            List <Person> persons = new List <Person>()
            {
                new Person
                {
                    Id           = 3,
                    Name         = "name3",
                    departmentId = 52
                },
                new Person
                {
                    Id           = 4,
                    Name         = "name4",
                    departmentId = 52
                }
            };
            Department department = new Department()
            {
                Id      = 52,
                persons = persons
            };

            DatabaseModifier.AddData(department);
        }
        public void TestDeleteMethodWhereItemDoesntExist()
        {
            Person person = new Person(203, "Delete203");
            int    count  = CountItemsInDatabase();

            DatabaseModifier.DeleteItemFromDatabase(person);
            int countAfter = CountItemsInDatabase();

            Assert.AreEqual(count, countAfter);
        }
예제 #4
0
        private static bool MergeDatabase(DatabaseModifierModel mergedDatabase,
                                          List <DatabaseModifier> userConfigDatabases,
                                          DatabaseMetadata defaultDatabaseSchema,
                                          AppMetadata appMetadata)
        {
            var hasChange          = false;
            var userConfigDatabase = userConfigDatabases.FirstOrDefault(d => d.Name == mergedDatabase.Name);

            if (defaultDatabaseSchema == null)
            {
                hasChange = true;
            }

            //Add new
            if (userConfigDatabase == null)
            {
                userConfigDatabase = new DatabaseModifier {
                    Name = mergedDatabase.Name
                };
                userConfigDatabases.Add(userConfigDatabase);
            }

            //Apply changes
            userConfigDatabase.TemplateId  = mergedDatabase.TemplateId;
            userConfigDatabase.BasedOn     = mergedDatabase.UseTemplateId;
            userConfigDatabase.Description = mergedDatabase.Description;

            if (mergedDatabase.TemplateId != 0 ||
                mergedDatabase.UseTemplateId != 0 ||
                !String.IsNullOrEmpty(mergedDatabase.Description))
            {
                hasChange = true;
            }

            if (mergedDatabase.Schemas != null)
            {
                foreach (var mergedSchema in mergedDatabase.Schemas)
                {
                    var defaultSchema = GetSchemaMetadata(defaultDatabaseSchema, appMetadata, mergedSchema.Name);
                    if (MergeSchema(mergedSchema, userConfigDatabase.Schemas, defaultSchema))
                    {
                        hasChange = true;
                    }
                }
            }

            //If no change has been detected with the default config
            if (!hasChange)
            {
                userConfigDatabases.Remove(userConfigDatabase);
            }

            return(hasChange);
        }
        public void TestDeleteMethod()
        {
            Person person = new Person(104, "Delete104");

            DatabaseModifier.AddData(person);
            int count = CountItemsInDatabase();

            DatabaseModifier.DeleteItemFromDatabase(person);
            int countAfter = CountItemsInDatabase();

            Assert.AreEqual(count - 1, countAfter);
        }
        public void TestCreateMethod()
        {
            DatabaseModifier.CreateTable(typeof(Department));
            DatabaseModifier.CreateTable(typeof(Person));
            List <string> tablesInDatabase = CheckTablesInDatabase();

            for (int i = 0; i < tablesInDatabase.Count; i++)
            {
                TestContext.WriteLine(tablesInDatabase[i]);
            }
            CollectionAssert.Contains(tablesInDatabase, "PERSONS");
        }
예제 #7
0
        public void TestAdderAndSelectMethod()
        {
            Person person = new Person(39, "Test39");

            person.departmentId = 39;
            int count = CountItemsInDatabase();

            DatabaseModifier.AddData(person);
            int countAfter = CountItemsInDatabase();

            Assert.AreEqual(count + 1, countAfter);
            List <Person> lists = DatabaseModifier.SelectData <Person>().ToList();

            foreach (Person p in lists)
            {
                TestContext.WriteLine(p.departmentId.ToString());
            }
        }
예제 #8
0
        public void UpdateItemInADatabase()
        {
            Person oldPerson = new Person()
            {
                Id   = 410,
                Name = "Update410"
            };
            //DatabaseModifier.AddData(oldPerson);
            Person newPerson = new Person()
            {
                Id           = 460,
                Name         = "Update460",
                departmentId = 460
            };

            //List<Person> lists = DatabaseModifier.SelectData<Person>().ToList();
            DatabaseModifier.UpdateItem(oldPerson, newPerson);
            //List<Person> lists2 = DatabaseModifier.SelectData<Person>().ToList();
            //Assert.AreNotEqual(lists, lists2);
        }
예제 #9
0
 public void initializeForTests()
 {
     DatabaseModifier.CreateTable(typeof(Department));
     DatabaseModifier.CreateTable(typeof(Person));
 }