public void OnCancel_Test()
        {
            var model = new ProviderFieldEditList { DataPortal.CreateChild<ProviderFieldEdit>(), DataPortal.CreateChild<ProviderFieldEdit>() };

            var vm = new SourceFieldsViewModel { Model = model, SelectedProviderField = model.First() };

            vm.OnCancel();

            Assert.AreSame(model.FirstOrDefault(), vm.SelectedProviderField);
        }
        public void Initialize_Test()
        {
            var model = new ProviderFieldEditList();
            var parentMock = Mock.Create<ITopLevelWindow>(Behavior.CallOriginal);

            var vm = new SourceFieldsViewModel();

            vm.Initialize(model, parentMock);

            Assert.AreSame(model, vm.Model);
            Assert.AreSame(parentMock, vm.ParentWindow);
        }
示例#3
0
        /// <summary>
        /// Called when [saved].
        /// </summary>
        /// <param name="model">The model.</param>
        public void OnSaved(ProviderFieldEditList model)
        {
            Model = model;

            SelectedProviderField = Model.FirstOrDefault();
        }
示例#4
0
 /// <summary>
 /// Initializes the specified model.
 /// </summary>
 /// <param name="model">The model.</param>
 /// <param name="parentWindow">The parent window.</param>
 public void Initialize(ProviderFieldEditList model, ITopLevelWindow parentWindow)
 {
     Model = model;
     ParentWindow = parentWindow;
 }
        public void SetSourceFields_Test()
        {
            var model = new ProviderFieldEditList { DataPortal.CreateChild<ProviderFieldEdit>(), DataPortal.CreateChild<ProviderFieldEdit>() };

            var vm = new SourceFieldsViewModel { Model = model, SelectedProviderField = model.First() };

            Assert.AreEqual(2, vm.Model.Count);

            var providerFields = new List<ProviderFieldInfo>
                                     {
                                         new ProviderFieldInfo(1, "name1", "type1", ESyncSourceFieldIdentityTypes.Index),
                                         new ProviderFieldInfo(2, string.Empty, "type2", ESyncSourceFieldIdentityTypes.Index),
                                         new ProviderFieldInfo(3, null, "type3", ESyncSourceFieldIdentityTypes.Index)
                                     };

            vm.SetSourceFields(new ProviderFieldInfoListMock(providerFields));

            Assert.AreEqual(3, vm.Model.Count);
        }
        public void RemoveFieldCommand_Test()
        {
            var model = new ProviderFieldEditList { DataPortal.CreateChild<ProviderFieldEdit>(), DataPortal.CreateChild<ProviderFieldEdit>(), DataPortal.CreateChild<ProviderFieldEdit>() };

            var parentMock = Mock.Create<ITopLevelWindow>(Behavior.CallOriginal);

            Action onOk = null;
            var popupBuilderMock = Mock.Create<PopupBuilder>(Behavior.CallOriginal);

            Mock.Arrange(() => popupBuilderMock.Show(Arg.IsAny<Action>(), Arg.IsAny<Func<bool>>())).DoInstead<Action, Func<bool>>((ok, cancel) => { onOk = ok; }).Returns(popupBuilderMock);

            var popupFactoryMock = Mock.Create<PopupFactory>(Behavior.CallOriginal);

            Mock.Arrange(() => popupFactoryMock.Popup()).Returns(popupBuilderMock);

            var vm = new SourceFieldsViewModel { ThePopupFactory = popupFactoryMock };

            vm.Initialize(model, parentMock);
            vm.SelectedProviderField = null;

            Assert.IsFalse(vm.RemoveFieldCommand.CanExecute(new object()));

            vm.SelectedProviderField = model.First();

            Assert.IsTrue(vm.RemoveFieldCommand.CanExecute(new object()));

            Assert.AreEqual(3, vm.Model.Count);

            vm.RemoveFieldCommand.Execute(new object());

            Assert.IsNotNull(onOk);

            onOk();

            Assert.AreEqual(2, vm.Model.Count);
        }
        public void AddFieldCommand_Test()
        {
            var model = new ProviderFieldEditList();
            var parentMock = Mock.Create<ITopLevelWindow>(Behavior.CallOriginal);

            var vm = new SourceFieldsViewModel();

            vm.Initialize(model, parentMock);

            Assert.AreEqual(0, vm.Model.Count);
            
            vm.AddFieldCommand.Execute(new object());

            Assert.AreEqual(1, vm.Model.Count);
            Assert.AreSame(vm.Model.Last(), vm.SelectedProviderField);
            Assert.IsFalse(string.IsNullOrEmpty(vm.SelectedProviderField.Name));
            Assert.IsFalse(string.IsNullOrEmpty(vm.SelectedProviderField.SystemName));
            Assert.IsFalse(string.IsNullOrEmpty(vm.SelectedProviderField.Type));
        }