public void SelectTables_Collection([Values(true, false)] bool hasTables) { // Arrange ITableInformationViewModel CreateTableInformationViewModelMockObject() { var mock = new Mock <ITableInformationViewModel>(); mock.SetupAllProperties(); return(mock.Object); } IColumnInformationViewModel CreateColumnInformationViewModelMockObject() { var mock = new Mock <IColumnInformationViewModel>(); mock.SetupAllProperties(); return(mock.Object); } IPickTablesViewModel vm = new PickTablesViewModel(CreateTableInformationViewModelMockObject, CreateColumnInformationViewModelMockObject); var c = new[] { new SerializationTableModel("unit.test", ObjectType.Table, null) }; ITableInformationViewModel[] tt = null; if (hasTables) { tt = GetTestViewModels(); foreach (var table in tt) { table.IsSelected = false; vm.Tables.Add(table); } } // Act vm.SelectTables(c); // Assert if (hasTables) { CollectionAssert.AreEqual(tt, vm.Tables); var selectedTableModel = c.Single(); Assert.IsTrue(vm.Tables.Single(m => m.Name == selectedTableModel.Name).IsSelected); Assert.IsTrue(vm.Tables.Where(m => m.Name != selectedTableModel.Name).All(m => m.IsSelected == false)); } else { Assert.IsEmpty(vm.Tables); } }
public void SelectTables_Collection([Values(true, false)] bool hasTables) { // Arrange var osa = Mock.Of <IOperatingSystemAccess>(); var fsa = Mock.Of <IFileSystemAccess>(); ITableInformationViewModel CreateTableInformationViewModelMockObject() { var mock = new Mock <ITableInformationViewModel>(); mock.SetupAllProperties(); return(mock.Object); } IPickTablesViewModel vm = new PickTablesViewModel(osa, fsa, CreateTableInformationViewModelMockObject); var c = new[] { new TableInformationModel("unit.test", true) }; ITableInformationViewModel[] tt = null; if (hasTables) { tt = GetTestViewModels(); foreach (var table in tt) { table.IsSelected = false; vm.Tables.Add(table); } } // Act vm.SelectTables(c); // Assert if (hasTables) { CollectionAssert.AreEqual(tt, vm.Tables); var selectedTableModel = c.Single(); Assert.IsTrue(vm.Tables.Single(m => m.Model.Name == selectedTableModel.Name).IsSelected); Assert.IsTrue(vm.Tables.Where(m => m.Model.Name != selectedTableModel.Name).All(m => m.IsSelected == false)); } else { Assert.IsEmpty(vm.Tables); } }
public void SelectTables_Null([Values(true, false)] bool hasTables) { // Arrange ITableInformationViewModel CreateTableInformationViewModelMockObject() { var mock = new Mock <ITableInformationViewModel>(); mock.SetupAllProperties(); return(mock.Object); } IColumnInformationViewModel CreateColumnInformationViewModelMockObject() { var mock = new Mock <IColumnInformationViewModel>(); mock.SetupAllProperties(); return(mock.Object); } IPickTablesViewModel vm = new PickTablesViewModel(CreateTableInformationViewModelMockObject, CreateColumnInformationViewModelMockObject); ITableInformationViewModel[] tt = null; if (hasTables) { tt = GetTestViewModels(); foreach (var table in tt) { table.IsSelected = false; vm.Tables.Add(table); } } // Act vm.SelectTables(null); // Assert if (hasTables) { CollectionAssert.AreEqual(tt, vm.Tables); Assert.IsTrue(vm.Tables.All(m => m.IsSelected == false)); } else { Assert.IsEmpty(vm.Tables); } }