public void AddObjects_Replacers() { // Arrange var vm = new ObjectTreeViewModel(CreateSchemaInformationViewModelMockObject, CreateTableInformationViewModelMockObject, CreateColumnInformationViewModelMockObject); var objects = GetDatabaseObjects().ToArray(); var replacers = GetReplacers(); // Act vm.AddObjects(objects, replacers); var vmobjects = vm.Types.SelectMany(t => t.Schemas).SelectMany(c => c.Objects).ToArray(); vm.SetSelectionState(true); var renamers = vm.GetRenamedObjects(); // Assert Assert.AreEqual(replacers.Length, renamers.Count()); foreach (var replacerSchema in replacers) { foreach (var table in replacerSchema.Tables) { var vmobject = vmobjects.First(o => o.Schema == replacerSchema.SchemaName && o.Name.Equals(table.Name, StringComparison.OrdinalIgnoreCase)); Assert.AreEqual(vmobject.NewName, table.NewName); foreach (var column in table.Columns) { Assert.AreEqual(vmobject.Columns.First(c => c.Name.Equals(column.Name, StringComparison.OrdinalIgnoreCase)).NewName, column.NewName); } } } }
public void GetSelectedObjects_WithObjects_AllSelected() { // Arrange var vm = new ObjectTreeViewModel(CreateSchemaInformationViewModelMockObject, CreateTableInformationViewModelMockObject, CreateColumnInformationViewModelMockObject); var databaseObjects = GetDatabaseObjects().OrderBy(c => c.Schema).ThenBy(c => c.Name).ToArray(); vm.AddObjects(databaseObjects, null); foreach (var item in vm.Types) { item.SetSelectedCommand.Execute(true); } // Act var result = vm.GetSelectedObjects().OrderBy(c => c.Name).ToArray(); // Assert Assert.IsNotNull(result); Assert.AreEqual(11, result.Count()); for (var i = 0; i < result.Length - 1; i++) { Assert.AreEqual(databaseObjects[i + 1].DisplayName, result[i].Name); } // Act var renamed = vm.GetRenamedObjects(); Assert.AreEqual(0, renamed.Count()); }
public void GetRenamedObjects() { // Arrange var vm = new ObjectTreeViewModel(CreateSchemaInformationViewModelMockObject, CreateTableInformationViewModelMockObject, CreateColumnInformationViewModelMockObject); var databaseObjects = GetDatabaseObjects(); vm.AddObjects(databaseObjects, null); //Act vm.Types[0].Schemas[0].Objects[0].SetSelectedCommand.Execute(true); vm.Types[0].Schemas[0].Objects[0].NewName = "NewTableName"; vm.Types[0].Schemas[0].Objects[0].Columns[0].NewName = "NewColumnName"; vm.Types[0].Schemas[3].Objects[0].SetSelectedCommand.Execute(true); vm.Types[0].Schemas[3].Objects[0].NewName = "DepartmentDetail"; vm.Types[0].Schemas[3].Objects[0].Columns[0].SetSelectedCommand.Execute(true); vm.Types[0].Schemas[3].Objects[0].Columns[0].NewName = "DepartmentName"; //Assert var renamedObjects = vm.GetRenamedObjects(); Assert.IsNotNull(renamedObjects); Assert.AreSame(renamedObjects.First().Tables[0].NewName, "NewTableName"); Assert.AreSame(renamedObjects.First().Tables[0].Columns[0].NewName, "NewColumnName"); Assert.AreSame(renamedObjects.Last().Tables[0].NewName, "DepartmentDetail"); Assert.AreSame(renamedObjects.Last().Tables[0].Columns[0].NewName, "DepartmentName"); }
public void AddObjects_Replacers_Issue679() { // Arrange var vm = new ObjectTreeViewModel(CreateSchemaInformationViewModelMockObject, CreateTableInformationViewModelMockObject, CreateColumnInformationViewModelMockObject); var objects = new TableModel[2]; objects[0] = new TableModel("departmentdetail", null, ReverseEngineer20.DatabaseType.Mysql, ObjectType.Table, new List <ColumnModel> { new ColumnModel("DEPTCode", false) }.ToArray()); objects[1] = new TableModel("employeedetail", null, ReverseEngineer20.DatabaseType.Mysql, ObjectType.Table, new List <ColumnModel> { new ColumnModel("EMPCode", false) }.ToArray()); var replacers = new Schema[1]; replacers[0] = new Schema() { SchemaName = null, UseSchemaName = false, Tables = new List <TableRenamer> { new TableRenamer { Name = "departmentdetail", NewName = "DepartmentDetail", Columns = new List <ColumnNamer> { new ColumnNamer { Name = "DEPTCode", NewName = "DEPTCode" }, } }, new TableRenamer { Name = "employeedetail", NewName = "EmployeeDetail", Columns = new List <ColumnNamer> { new ColumnNamer { Name = "EMPCode", NewName = "EMPCode" }, } } }, }; // Act vm.AddObjects(objects, replacers); vm.SetSelectionState(true); var renamers = vm.GetRenamedObjects(); // Assert Assert.AreEqual(1, renamers.First().Tables[0].Columns.Count); Assert.AreEqual(1, renamers.First().Tables[1].Columns.Count); }