コード例 #1
0
        public void AddDataIndexCommandSetsSelectedDataIndex()
        {
            var vm = new ProcessDataIndexesViewModel
            {
                Model = Mock.Create<ProcessEdit>(Behavior.Loose)
            };
            Mock.Arrange(() => vm.Model.Id).Returns(1);
            var indexes = new ProcessDataIndexList();
            Mock.Arrange(() => vm.Model.DataIndexes).Returns(indexes);

            Mock.Arrange(() => vm.Model.DataIndexes.Add(Arg.IsAny<ProcessDataIndexEdit>())).DoNothing();

            Mock.Arrange(() => vm.Enabled).Returns(true);
            Mock.Arrange(() => vm.Model.BeingLocalized).Returns(false);

            Mock.Arrange(() => AggregateHelper.GetNextName(Arg.IsAny<IEnumerable<string>>(), Constants.NewDataIndexName)).Returns("anyName");
            Mock.NonPublic.Arrange(vm, "RefreshUniqueDataIndexDisponible").DoNothing();

            var indexEdit = new ProcessDataIndexEdit();
            var task = TaskHelper.FromResult(indexEdit);

            var testComplited = false;
            Mock.Arrange(() => indexEdit.RecheckAllRules()).DoInstead(() => testComplited = true);

            Mock.Arrange(() => ProcessDataIndexEdit.BeginCreateNewDataIndexEdit()).Returns(task);

            vm.AddDataIndexCommand.Execute(null);

            EnqueueConditional(() => testComplited);
            EnqueueCallback(() => Assert.AreEqual("anyName", vm.SelectedDataIndex.Name));
            EnqueueTestComplete();
        }
コード例 #2
0
        public void ExecuteDeleteDataIndexRisesSetSelectedDataIndexIfAny()
        {
            var vm = new ProcessDataIndexesViewModel()
                         {
                             Model = Mock.Create<ProcessEdit>(Behavior.Loose),
                             SelectedDataIndex = new ProcessDataIndexEdit()
                         };
            var dataIndexes = new ProcessDataIndexList();
            Mock.Arrange(() => vm.Model.DataIndexes).Returns(dataIndexes);

            var called = false;
            Mock.NonPublic.Arrange(vm, "SetSelectedDataIndexIfAny").DoInstead(() => called = true);

            var privateAccessor = new PrivateAccessor(vm);
            privateAccessor.CallMethod("ExecuteDeleteDataIndex", vm.SelectedDataIndex);

            Assert.IsTrue(called);
        }