public void ShouldIntializeWithoutProblems()
        {
            _unitConfigs.IsDeveloper = true;
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsTrue(wrapper.IsValid);
        }
Exemplo n.º 2
0
        public void ShouldInitializeAddressProperty()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsNotNull(wrapper.Address);
            Assert.AreEqual(_unitConfigs.Address, wrapper.Address.Model);
        }
Exemplo n.º 3
0
        public void ShouldSetValueOfUnderlyingModelProperty()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.FirstName = "Julia";
            Assert.AreEqual("Julia", _unitConfigs.FirstName);
        }
        public void ShouldBeInSyncAfterClearingEmails()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.Emails.Clear();
            CheckIfModelEmailsCollectionIsInSync(wrapper);
        }
        public void ShouldInitializeEmailsProperty()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsNotNull(wrapper.Emails);
            CheckIfModelEmailsCollectionIsInSync(wrapper);
        }
        public void ShouldBeInSyncAfterAddingEmail()
        {
            _unitConfigs.Emails.Remove(_friendEmail);
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.Emails.Add(new FriendEmailWrapper(_friendEmail));
            CheckIfModelEmailsCollectionIsInSync(wrapper);
        }
        public void ShouldBeInSyncAfterRemovingEmail()
        {
            var wrapper       = new UnitConfigWrapper(_unitConfigs);
            var emailToRemove = wrapper.Emails.Single(ew => ew.Model == _friendEmail);

            wrapper.Emails.Remove(emailToRemove);
            CheckIfModelEmailsCollectionIsInSync(wrapper);
        }
        public void ShouldSetIsValidOfRootWhenInitializing()
        {
            _unitConfigs.Emails.First().Email = "";
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsFalse(wrapper.IsValid);
            Assert.IsFalse(wrapper.HasErrors);
            Assert.IsTrue(wrapper.Emails.First().HasErrors);
        }
        public void ShouldStoreOriginalValue()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.AreEqual("Thomas", wrapper.FirstNameOriginalValue);

            wrapper.FirstName = "Julia";
            Assert.AreEqual("Thomas", wrapper.FirstNameOriginalValue);
        }
        public void ShouldSetIsChangedOfUnitConfigWrapper()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.Address.City = "Salt Lake City";
            Assert.IsTrue(wrapper.IsChanged);

            wrapper.Address.City = "Müllheim";
            Assert.IsFalse(wrapper.IsChanged);
        }
        public void ShouldSetIsValidOfRootAfterInitialization()
        {
            _unitConfigs.Address.City = "";
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsFalse(wrapper.IsValid);

            wrapper.Address.City = "Salt Lake City";
            Assert.IsTrue(wrapper.IsValid);
        }
        public void ShouldSetIsValidOfRootWhenAddingInvalidItem()
        {
            var emailToAdd = new FriendEmailWrapper(new FriendEmail());
            var wrapper    = new UnitConfigWrapper(_unitConfigs);

            Assert.IsTrue(wrapper.IsValid);;
            wrapper.Emails.Add(emailToAdd);
            Assert.IsFalse(wrapper.IsValid);
            emailToAdd.Email = "*****@*****.**";
            Assert.IsTrue(wrapper.IsValid);
        }
Exemplo n.º 13
0
 public void ShouldThrowArgumentNullExceptionIfModelIsNull()
 {
     try
     {
         var wrapper = new UnitConfigWrapper(null);
     }
     catch (ArgumentNullException ex)
     {
         Assert.AreEqual("model", ex.ParamName);
         throw;
     }
 }
        public void ShouldSetIsValidOfRoot()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsTrue(wrapper.IsValid);

            wrapper.Emails.First().Email = "";
            Assert.IsFalse(wrapper.IsValid);

            wrapper.Emails.First().Email = "*****@*****.**";
            Assert.IsTrue(wrapper.IsValid);
        }
        public void ShouldSetIsValidOfRootWhenRemovingInvalidItem()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsTrue(wrapper.IsValid);

            wrapper.Emails.First().Email = "";
            Assert.IsFalse(wrapper.IsValid);

            wrapper.Emails.Remove(wrapper.Emails.First());
            Assert.IsTrue(wrapper.IsValid);
        }
        public void ShouldSetIsChangedOfUnitConfigWrapper()
        {
            var wrapper       = new UnitConfigWrapper(_unitConfigs);
            var emailToModify = wrapper.Emails.First();

            emailToModify.Email = "*****@*****.**";

            Assert.IsTrue(wrapper.IsChanged);

            emailToModify.Email = "*****@*****.**";
            Assert.IsFalse(wrapper.IsChanged);
        }
        public void ShouldSetIsValid()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsTrue(wrapper.IsValid);

            wrapper.FirstName = "";
            Assert.IsFalse(wrapper.IsValid);

            wrapper.FirstName = "Julia";
            Assert.IsTrue(wrapper.IsValid);
        }
        public void ShouldSetErrorsAndIsValidAfterInitialization()
        {
            _unitConfigs.FirstName = "";
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsFalse(wrapper.IsValid);
            Assert.IsTrue(wrapper.HasErrors);

            var errors = wrapper.GetErrors(nameof(wrapper.FirstName)).Cast <string>().ToList();

            Assert.AreEqual(1, errors.Count);
            Assert.AreEqual("Firstname is required", errors.First());
        }
        public void ShouldRejectChanges()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.Address.City = "Salt Lake City";
            Assert.AreEqual("Müllheim", wrapper.Address.CityOriginalValue);

            wrapper.RejectChanges();

            Assert.IsFalse(wrapper.IsChanged);
            Assert.AreEqual("Müllheim", wrapper.Address.City);
            Assert.AreEqual("Müllheim", wrapper.Address.CityOriginalValue);
        }
Exemplo n.º 20
0
 public void ShouldThrowArgumentExceptionIfEmailsCollectionIsNull()
 {
     try
     {
         _unitConfigs.Emails = null;
         var wrapper = new UnitConfigWrapper(_unitConfigs);
     }
     catch (ArgumentException ex)
     {
         Assert.AreEqual("Emails cannot be null", ex.Message);
         throw;
     }
 }
Exemplo n.º 21
0
        public void ShouldNotRaisePropertyChangedEventIfPropertyIsSetToSameValue()
        {
            var fired   = false;
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == "FirstName")
                {
                    fired = true;
                }
            };
            wrapper.FirstName = "Thomas";
            Assert.IsFalse(fired);
        }
        public void ShouldSetIsChanged()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsFalse(wrapper.FirstNameIsChanged);
            Assert.IsFalse(wrapper.IsChanged);

            wrapper.FirstName = "Julia";
            Assert.IsTrue(wrapper.FirstNameIsChanged);
            Assert.IsTrue(wrapper.IsChanged);

            wrapper.FirstName = "Thomas";
            Assert.IsFalse(wrapper.FirstNameIsChanged);
            Assert.IsFalse(wrapper.IsChanged);
        }
        public void ShouldRaisePropertyChangedEventForIsChanged()
        {
            var fired   = false;
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == nameof(wrapper.IsChanged))
                {
                    fired = true;
                }
            };
            wrapper.FirstName = "Julia";
            Assert.IsTrue(fired);
        }
        public void ShouldRaisePropertyChangedEventForIsChangedPropertyOffUnitConfigWrapper()
        {
            var fired   = false;
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == nameof(wrapper.IsChanged))
                {
                    fired = true;
                }
            };

            wrapper.Address.City = "Salt Lake City";
            Assert.IsTrue(fired);
        }
        public void ShouldRaisePropertyChangedEventForIsChangedPropertyOfUnitConfigWrapper()
        {
            var fired   = false;
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == nameof(wrapper.IsChanged))
                {
                    fired = true;
                }
            };

            wrapper.Emails.First().Email = "*****@*****.**";
            Assert.IsTrue(fired);
        }
        public void ShouldRejectChanges()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            var emailToModify = wrapper.Emails.First();

            emailToModify.Email = "*****@*****.**";

            Assert.IsTrue(wrapper.IsChanged);

            wrapper.RejectChanges();

            Assert.IsFalse(wrapper.IsChanged);
            Assert.AreEqual("*****@*****.**", emailToModify.Email);
            Assert.AreEqual("*****@*****.**", emailToModify.EmailOriginalValue);
        }
        public void ShouldAcceptChanges()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.FirstName = "Julia";
            Assert.AreEqual("Julia", wrapper.FirstName);
            Assert.AreEqual("Thomas", wrapper.FirstNameOriginalValue);
            Assert.IsTrue(wrapper.FirstNameIsChanged);
            Assert.IsTrue(wrapper.IsChanged);

            wrapper.AcceptChanges();

            Assert.AreEqual("Julia", wrapper.FirstName);
            Assert.AreEqual("Julia", wrapper.FirstNameOriginalValue);
            Assert.IsFalse(wrapper.FirstNameIsChanged);
            Assert.IsFalse(wrapper.IsChanged);
        }
        public void ShouldRefreshErrorsAndIsValidWhenRejectingChanges()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsTrue(wrapper.IsValid);
            Assert.IsFalse(wrapper.HasErrors);

            wrapper.FirstName = "";

            Assert.IsFalse(wrapper.IsValid);
            Assert.IsTrue(wrapper.HasErrors);

            wrapper.RejectChanges();

            Assert.IsTrue(wrapper.IsValid);
            Assert.IsFalse(wrapper.HasErrors);
        }
        public void ShouldReturnValidationErrorIfFirstNameIsEmpty()
        {
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            Assert.IsFalse(wrapper.HasErrors);

            wrapper.FirstName = "";
            Assert.IsTrue(wrapper.HasErrors);

            var errors = wrapper.GetErrors(nameof(wrapper.FirstName)).Cast <string>().ToList();

            Assert.AreEqual(1, errors.Count);
            Assert.AreEqual("Firstname is required", errors.First());

            wrapper.FirstName = "Julia";
            Assert.IsFalse(wrapper.HasErrors);
        }
        public void ShouldRaisePropertyChangedEventForIsValidOfRoot()
        {
            var fired   = false;
            var wrapper = new UnitConfigWrapper(_unitConfigs);

            wrapper.PropertyChanged += (s, e) =>
            {
                if (e.PropertyName == "IsValid")
                {
                    fired = true;
                }
            };
            wrapper.Emails.First().Email = "";
            Assert.IsTrue(fired);

            fired = false;
            wrapper.Emails.First().Email = "*****@*****.**";
            Assert.IsTrue(fired);
        }