コード例 #1
0
        public void OkCommand_Executed()
        {
            // Arrange
            var  closeRequested = false;
            bool?dialogResult   = null;

            IPickTablesViewModel vm = new PickTablesViewModel(CreateObjectTreeViewModel());

            vm.CloseRequested += (sender,
                                  args) =>
            {
                closeRequested = true;
                dialogResult   = args.DialogResult;
            };
            vm.AddObjects(GetDatabaseObjects());
            vm.ObjectTree.Types[0].Objects[0].IsSelected = true;

            // Act
            vm.OkCommand.Execute(null);

            // Assert
            Assert.IsTrue(closeRequested);
            Assert.IsTrue(dialogResult);
            Assert.IsNotEmpty(vm.GetSelectedObjects());
        }
コード例 #2
0
        public void AddObjects_Null()
        {
            // Arrange
            IPickTablesViewModel vm = new PickTablesViewModel(CreateObjectTreeViewModel());

            // Act
            // Assert
            Assert.DoesNotThrow(() => vm.AddObjects(null));
        }
コード例 #3
0
        public void AddObjects_Null()
        {
            // Arrange
            var otvm = CreateObjectTreeViewModelMock();
            var vm   = new PickTablesViewModel(otvm.Object);

            // Act
            // Assert
            Assert.DoesNotThrow(() => vm.AddObjects(null, null));
        }
コード例 #4
0
        public void AddTables_NotNull()
        {
            // Arrange
            IPickTablesViewModel vm = new PickTablesViewModel(CreateObjectTreeViewModel());
            var databaseObjects     = new TableModel[0];

            // Act
            // Assert
            Assert.DoesNotThrow(() => vm.AddObjects(databaseObjects));
        }
コード例 #5
0
        public void AddObjects_NotNull()
        {
            // Arrange
            var otvm             = CreateObjectTreeViewModelMock();
            var vm               = new PickTablesViewModel(otvm.Object);
            var databaseObjects  = new TableModel[0];
            var replacingSchemas = new Schema[0];

            // Act
            // Assert
            Assert.DoesNotThrow(() => vm.AddObjects(databaseObjects, replacingSchemas));
            otvm.Verify(c => c.AddObjects(databaseObjects, replacingSchemas), Times.Once);
        }
コード例 #6
0
        public void TableSelectionThreeState_NoneSelected()
        {
            // Arrange
            IPickTablesViewModel vm = new PickTablesViewModel(CreateObjectTreeViewModel());
            var databaseObjects     = GetDatabaseObjects();

            vm.AddObjects(databaseObjects);
            vm.SearchText = "foo";

            // Act
            vm.TableSelectionThreeState = false;

            // Assert
            Assert.AreEqual(vm.GetSelectedObjects().Count(), 0);
            Assert.AreEqual(string.Empty, vm.SearchText);
        }
コード例 #7
0
        public void OkCommand_CanExecute_ObjectsSelected()
        {
            // Arrange
            IPickTablesViewModel vm = new PickTablesViewModel(CreateObjectTreeViewModel());

            vm.AddObjects(GetDatabaseObjects());
            foreach (var item in vm.ObjectTree.Types.SelectMany(c => c.Objects))
            {
                item.IsSelected = true;
            }

            // Act
            var canExecute = vm.OkCommand.CanExecute(null);

            // Assert
            Assert.IsTrue(canExecute);
        }