private ColumnInformationViewModel CreateColumnViewModel(string name, bool isPrimaryKey = false) { var messenger = new Mock <IMessenger>(); messenger.SetupAllProperties(); var vm = new ColumnInformationViewModel(messenger.Object); vm.Name = name; vm.IsPrimaryKey = isPrimaryKey; return(vm); }
public void PropertyChanged_IsSelected_DifferentValue() { // Arrange var propertyChangedInvoked = false; var vm = new ColumnInformationViewModel { Name = "column1", IsSelected = true }; vm.PropertyChanged += (sender, args) => propertyChangedInvoked = true; // Act vm.IsSelected = false; // Assert Assert.IsTrue(propertyChangedInvoked); }
private static ISchemaInformationViewModel[] GetDatabaseObjects() { TableInformationViewModel CreateTable(string tableSchema, string name, bool selected) { var messenger = new Mock <IMessenger>(); messenger.SetupAllProperties(); var result = new TableInformationViewModel(messenger.Object); result.Name = name; result.Schema = tableSchema; if (selected) { result.SetSelectedCommand.Execute(true); } return(result); } ColumnInformationViewModel CreateColumn(string name, bool isPrimaryKey, bool selected) { var messenger = new Mock <IMessenger>(); messenger.SetupAllProperties(); var result = new ColumnInformationViewModel(messenger.Object); result.Name = name; result.IsPrimaryKey = isPrimaryKey; if (selected) { result.SetSelectedCommand.Execute(true); } return(result); } var schema0 = new SchemaInformationViewModel { Name = "dbo" }; schema0.Objects.Add(CreateTable("dbo", "Atlas", false)); schema0.Objects[0].Columns.Add(CreateColumn("id", true, false)); schema0.Objects[0].Columns.Add(CreateColumn("column1", false, false)); schema0.Objects[0].Columns.Add(CreateColumn("column2", false, false)); schema0.Objects.Add(CreateTable("dbo", "__RefactorLog", true)); schema0.Objects[1].Columns.Add(CreateColumn("id", true, false)); schema0.Objects[1].Columns.Add(CreateColumn("column1", false, false)); schema0.Objects[1].Columns.Add(CreateColumn("column2", false, false)); schema0.Objects.Add(CreateTable("dbo", "sysdiagrams", false)); schema0.Objects[2].Columns.Add(CreateColumn("id", true, false)); schema0.Objects[2].Columns.Add(CreateColumn("column1", false, false)); schema0.Objects[2].Columns.Add(CreateColumn("column2", false, false)); schema0.Objects.Add(CreateTable("dbo", "sysdiagrams", false)); schema0.Objects[2].Columns.Add(CreateColumn("id", true, false)); schema0.Objects[2].Columns.Add(CreateColumn("column1", false, false)); schema0.Objects[2].Columns.Add(CreateColumn("column2", false, false)); var schema1 = new SchemaInformationViewModel { Name = "unit" }; schema1.Objects.Add(CreateTable("unit", "test", false)); schema1.Objects[0].Columns.Add(CreateColumn("id", true, false)); schema1.Objects[0].Columns.Add(CreateColumn("column1", false, false)); schema1.Objects[0].Columns.Add(CreateColumn("column2", false, false)); schema1.Objects.Add(CreateTable("unit", "foo", true)); schema1.Objects[1].Columns.Add(CreateColumn("id", true, false)); schema1.Objects[1].Columns.Add(CreateColumn("column1", false, false)); schema1.Objects[1].Columns.Add(CreateColumn("column2", false, false)); return(new[] { schema0, schema1 }); }