Exemplo n.º 1
0
        public void should_return_correct_values()
        {
            var creationInfo = new CreationInfo();

            creationInfo.Parent = TestTools.GetIDataObjectMock(Guid.NewGuid()).Object;
            var viewModel = new SelectProjectTemplatePageViewModel(creationInfo, _dataObjectServiceMock.Object);

            var expected = "Шаг 1 из 4. Выберите элемент для использования в качестве шаблона";
            var actual   = viewModel.GetTitle();

            Assert.AreEqual(expected, actual);

            expected = "";
            actual   = viewModel.GetTemplateName();
            Assert.AreEqual(expected, actual);

            actual = viewModel.NextButtonCaption();
            Assert.IsNull(actual);

            actual = viewModel.NextButtonCaption();
            Assert.IsNull(actual);

            Assert.IsFalse(viewModel.CanGoBack());
            Assert.IsFalse(viewModel.CanGoNext());
        }
Exemplo n.º 2
0
        public void should_can_go_next_when_selected_project()
        {
            //Given
            var creationInfo = new CreationInfo();
            var type         = TestTools.GetITypeMock();
            var parentType   = TestTools.GetITypeMock();

            parentType.Setup(t => t.Children).Returns(new ReadOnlyCollection <int>(new List <int>()
            {
                type.Object.Id
            }));
            var parent = TestTools.GetIDataObjectMock(parentType);

            creationInfo.Parent = parent.Object;

            var viewModel = new SelectProjectTemplatePageViewModel(creationInfo, _dataObjectServiceMock.Object);

            //Проект монтируется на диск
            type.Setup(t => t.IsMountable).Returns(true);
            var idataObjectMock = TestTools.GetIDataObjectMock(type);

            //when
            var node = TestTools.GetNodeViewModel(idataObjectMock, _dataObjectServiceMock);

            viewModel.ObjectsTreeViewModel.SelectedItem = node;

            //Then
            Assert.IsTrue(viewModel.CanGoNext());
        }
Exemplo n.º 3
0
        public void should_not_can_go_next_when_selected_project()
        {
            //Given
            var creationInfo = new CreationInfo();
            var viewModel    = new SelectProjectTemplatePageViewModel(creationInfo, _dataObjectServiceMock.Object);

            var type = TestTools.GetITypeMock();

            //Элемент не монтируется на диск
            type.Setup(t => t.IsMountable).Returns(false);
            var idataObjectMock = TestTools.GetIDataObjectMock(type);

            creationInfo.Parent = TestTools.GetIDataObjectMock(idataObjectMock.Object.ParentId).Object;

            //when
            var node = TestTools.GetNodeViewModel(idataObjectMock, _dataObjectServiceMock);

            viewModel.ObjectsTreeViewModel.SelectedItem = node;

            //Then
            Assert.IsFalse(viewModel.CanGoNext());

            //Снимем селек в дереве
            viewModel.ObjectsTreeViewModel.SelectedItem = null;
            //Then
            Assert.IsFalse(viewModel.CanGoNext());
        }
Exemplo n.º 4
0
        private void FillWizardPages(WizardControl view)
        {
            //Наполним визард страницами
            var isUpdateStruct = _creationInfo.Parent.Type.IsProject;

            //Страница выбора шаблона
            var filter = new ListViewFolderChildrenFilter(_repository);

            _dataObjectService = new DataObjectService(_repository, filter);
            var vm = new SelectProjectTemplatePageViewModel(_creationInfo, _dataObjectService);

            view.Pages.Add(new SelectProjectTemplatePage {
                DataContext = vm
            });

            //Страница состав выбранного проекта
            var serviceFactory = new ListViewDataObjectServiceFactory(_repository);
            var vm2            = new ProjectCompositionPageViewModel(_creationInfo, serviceFactory);

            view.Pages.Add(new ProjectCompositionPage {
                DataContext = vm2
            });

            //Страница файлы и папки выбранного проекта
            var storageServiceFactory = new StorageDataObjectServiceFactory(_repository);
            var vm3 = new FilesAndFolderPageViewModel(_creationInfo, storageServiceFactory);

            view.Pages.Add(new FilesAndFolderPage {
                DataContext = vm3
            });

            //Страница карточки нового проекта
            if (!isUpdateStruct)
            {
                var vm4 = new ProjectCardPageViewModel(_creationInfo, _repository, _pilotDialogService, _attributeFormatParser);
                view.Pages.Add(new ProjectCardPage {
                    DataContext = vm4
                });
            }

            //Страница процесс
            var processViewModel = isUpdateStruct
                ? new UpdateStructProcessPageViewModel(_creationInfo, _modifier, _repository, _fileProvider)
                : new ProcessPageViewModel(_creationInfo, _modifier, _repository, _fileProvider);

            view.Pages.Add(new ProcessPage {
                DataContext = processViewModel
            });

            //Результат
            var vm5 = new FinishPageViewModel(_creationInfo);

            view.Pages.Add(new FinishPage {
                DataContext = vm5
            });
        }
Exemplo n.º 5
0
        public void should_load_tree()
        {
            //given
            var creationInfo = new CreationInfo();
            var viewModel    = new SelectProjectTemplatePageViewModel(creationInfo, _dataObjectServiceMock.Object);

            //when
            viewModel.Load();

            //then
            _dataObjectServiceMock.Verify(d => d.Load(SystemObjectIds.RootObjectId, It.IsAny <Action>(), false), Times.Once);
        }
Exemplo n.º 6
0
        public void should_save_selected_project()
        {
            //Given
            var creationInfo = new CreationInfo();
            var viewModel    = new SelectProjectTemplatePageViewModel(creationInfo, _dataObjectServiceMock.Object);

            var type = TestTools.GetITypeMock();

            //Элемент не монтируется на диск
            type.Setup(t => t.IsMountable).Returns(true);
            var idataObjectMock = TestTools.GetIDataObjectMock(type);

            //when
            var selectedNode = TestTools.GetNodeViewModel(idataObjectMock, _dataObjectServiceMock);

            viewModel.ObjectsTreeViewModel.SelectedItem = selectedNode;

            //then
            Assert.AreEqual(creationInfo.Template, selectedNode);
        }
Exemplo n.º 7
0
        public void should_update_state_when_select()
        {
            //Given
            var creationInfo = new CreationInfo();
            var viewModel    = new SelectProjectTemplatePageViewModel(creationInfo, _dataObjectServiceMock.Object);

            var type            = TestTools.GetITypeMock();
            var idataObjectMock = TestTools.GetIDataObjectMock(type);
            var selectedNode    = TestTools.GetNodeViewModel(idataObjectMock, _dataObjectServiceMock);

            var isUpdateEventRaised = false;

            viewModel.UpdateState += (sender, args) =>
            {
                isUpdateEventRaised = true;
            };

            //when
            viewModel.ObjectsTreeViewModel.SelectedItem = selectedNode;

            //then
            Assert.IsTrue(isUpdateEventRaised);
        }