public void UpdatesMappedValidationAfterChangingMappedViewModelProperty() { var vm = new TestViewModelWithMappings(new Person()); vm.DeferValidationUntilFirstSaveCallWrapper = false; vm.FirstNameAsTwoWay = "John"; vm.LastName = "Doe"; Assert.IsFalse(vm.HasErrors); }
public void ViewModelWithViewModelToModelMappings_Explicit_InitiatedFromViewModel() { var person = new Person(); var viewModel = new TestViewModelWithMappings(person); Assert.AreEqual(string.Empty, person.FirstName); Assert.AreEqual(person.FirstName, viewModel.FirstNameAsExplicit); viewModel.FirstNameAsExplicit = "geert"; // When initiated from VM => nothing should change Assert.AreEqual("geert", viewModel.FirstNameAsExplicit); Assert.AreNotEqual(person.FirstName, viewModel.FirstNameAsExplicit); }
public void ViewModelWithViewModelToModelMappings_OneWayToSource_InitiatedFromViewModel() { var person = new Person(); var viewModel = new TestViewModelWithMappings(person); Assert.AreEqual(string.Empty, person.FirstName); Assert.AreEqual(person.FirstName, viewModel.FirstNameAsOneWayToSource); viewModel.FirstNameAsOneWayToSource = "geert"; // Both must have changed Assert.AreEqual("geert", viewModel.FirstNameAsOneWayToSource); Assert.AreEqual(person.FirstName, viewModel.FirstNameAsOneWayToSource); }
public void ViewModelWithViewModelToModelMappings_Explicit_InitiatedManually() { var person = new Person(); var viewModel = new TestViewModelWithMappings(person); Assert.AreEqual(string.Empty, person.FirstName); Assert.AreEqual(person.FirstName, viewModel.FirstNameAsExplicit); viewModel.FirstNameAsExplicit = "geert"; viewModel.UpdateExplicitMappings(); // Both must have changed Assert.AreEqual("geert", viewModel.FirstNameAsExplicit); Assert.AreEqual(person.FirstName, viewModel.FirstNameAsExplicit); }
public void Exposes_Validation_For_Validated_Model() { // Test case for https://github.com/Catel/Catel/issues/1615 var model = new Person(); model.Validate(); Assert.IsTrue(model.HasErrors); var vm = new TestViewModelWithMappings(model); vm.DeferValidationUntilFirstSaveCallWrapper = false; Assert.IsTrue(vm.HasErrors); vm.FirstNameAsTwoWay = "John"; vm.LastName = "Doe"; Assert.IsFalse(vm.HasErrors); }