public void Feature_not_enabled_returns_is_valid_true() { var mockFeature = new Mock <IFilterPathwaysByAgeFeature>(); mockFeature.Setup(f => f.IsEnabled).Returns(false); var sut = new AgeValidator <AgeGenderViewModel, int>(u => u.Age, mockFeature.Object); Assert.IsTrue(sut.IsAValidAge(24)); }
public void Feature_enabled_invalid_age_categories_throws_exception() { var mockFeature = new Mock <IFilterPathwaysByAgeFeature>(); mockFeature.Setup(f => f.IsEnabled).Returns(true); mockFeature.Setup(f => f.FilteredAgeCategories).Returns(new[] { "x", "toddler" }); var sut = new AgeValidator <AgeGenderViewModel, int>(u => u.Age, mockFeature.Object); Assert.IsTrue(sut.IsAValidAge(5)); }
public void Feature_enabled_exclude_infants_and_toddlers_age_5_returns_true() { var mockFeature = new Mock <IFilterPathwaysByAgeFeature>(); mockFeature.Setup(f => f.IsEnabled).Returns(true); mockFeature.Setup(f => f.FilteredAgeCategories).Returns(new[] { "infant", "toddler" }); var sut = new AgeValidator <AgeGenderViewModel, int>(u => u.Age, mockFeature.Object); Assert.IsTrue(sut.IsAValidAge(5)); }
public void Feature_enabled_empty_age_list_returns_is_valid_true() { var mockFeature = new Mock <IFilterPathwaysByAgeFeature>(); mockFeature.Setup(f => f.IsEnabled).Returns(true); mockFeature.Setup(f => f.FilteredAgeCategories).Returns(new string[0]); var sut = new AgeValidator <AgeGenderViewModel, int>(u => u.Age, mockFeature.Object); Assert.IsTrue(sut.IsAValidAge(24)); }
public void validationTest_AgeIsAboveMaxAge() { try { AgeValidator ageValidator = new AgeValidator(55); ageValidator.validation(); Assert.Fail("Nem dob kivételt magas életkorra!"); } catch (AgeAboveMaximumAgeException) { } }
public void validationTest_AgeIsUnderMinAge() { try { AgeValidator ageValidator = new AgeValidator(11); ageValidator.validation(); Assert.Fail("Nem dob kivételt alacsony életkorra!"); } catch (AgeUnderMinimumAgeException) { } }
public void validationTest_AgeIsZero() { try { AgeValidator ageValidator = new AgeValidator(0); ageValidator.validation(); Assert.Fail("Nem dob kivételt 0 életkorra!"); } catch (AgeIsZeroException) { } }
static void Main(string[] args) { //Define successors var firstNameValidator = new FirstNameValidator(); var lastNameValidator = new LastNameValidator(); var ageValidator = new AgeValidator(); //Init successors in sequence firstNameValidator.SetSuccessor(lastNameValidator); lastNameValidator.SetSuccessor(ageValidator); var account = new Account() { Age = 20, BankCreditRequestEnum = ChainOfRespobility.Data.Enums.BankCreditRequestEnum.Financial, FirstName = "Linus", LastName = "Torvalds" }; try { firstNameValidator.ValidateBankCreditRequest(account); } catch (Exception ex) { Console.WriteLine($"{account.FirstName} {account.LastName} credit request has been denied\n" + $"Reason : {ex.Message}\n\n"); } var account2 = new Account() { Age = 30, BankCreditRequestEnum = ChainOfRespobility.Data.Enums.BankCreditRequestEnum.IndividualLoan, FirstName = "Steve", LastName = "Jobs" }; firstNameValidator.ValidateBankCreditRequest(account2); Console.WriteLine("-------------"); Console.WriteLine("Approved Account Info\n"); Console.WriteLine($"Id : {account2.Id}\n"); Console.WriteLine($"First Name : {account2.FirstName}\n"); Console.WriteLine($"Last Name : {account2.LastName}\n"); Console.WriteLine($"Age : {account2.Age}\n"); Console.WriteLine($"Approved Date : {account2.CreatedAt.ToString("MM/dd/yyyy HH:mm:ss.fff", CultureInfo.InvariantCulture)}\n"); Console.WriteLine("-------------"); }
private bool ValidateFields() { bool result = true; NameValidator.Validate(); if (!NameValidator.IsValid) { result = false; } AgeValidator.Validate(); if (!AgeValidator.IsValid) { result = false; } return(result); }
public void CanValidateAgeDiff() { Person w1 = new Person { BirthDate = new DateTime(2000, DateTime.Now.Month, DateTime.Now.Day) }; Person m1 = new Person { BirthDate = new DateTime(2000, DateTime.Now.Month, DateTime.Now.Day) }; Person w2 = new Person { BirthDate = new DateTime(2000, 1, 1) }; Person m2 = new Person { BirthDate = new DateTime(1994, 12, 31) }; AgeValidator validator = new AgeValidator(); Assert.True(validator.Matched(w1, m1)); Assert.False(validator.Matched(w2, m2)); }
public void setAge(int age) { try { AgeValidator ageValidator = new AgeValidator(age); ageValidator.validation(); this.age = age; } catch (AgeIsZeroException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + age); } catch (AgeUnderMinimumAgeException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + age); } catch (AgeAboveMaximumAgeException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + age); } }
public AgeValidatorTests() { _ageValidator = new AgeValidator(); }
/// <summary> /// Versenyző hozzáadása a csapathoz /// Ellenörizze, hogy az argumentumbeli számadadok megfelelő formátumuak-e, ha nem dobjon kivételt /// NameValidator, AgeValidator és SalaryValidatorral ellenörizze az adatokat. Ha valamelyik nem jó, dobjon kivételt /// Alsóbb rétegek segítségével, ellenörizze, hogy az adott nevű és életkorú versenyző tagja-e a csapatnak, ha igen dobjon kivételt /// Alsóbb rétegek segítségével kérje, le a következő versenyző ID-jét /// Hozza létre az új Racert-t. Az alsóbb rétegek kivételeit kapja el, és adja tovább /// Adja hozzá az új versenyzőt a csapathoz. Kapja el az elsó rétegek kivételeit és adja tovább /// </summary> /// <param name="teamName">A csapat neve</param> /// <param name="racerName">A versenyző neve</param> /// <param name="racerAge">A versenyző életkora</param> /// <param name="racerSalary">A versenyző bérköltsége</param> public void addRacerToTeam(string teamName, string racerName, string racerAge, string racerSalary) { if (!int.TryParse(racerAge, out int racerAgeNumber)) { throw new ControllerException("Életkor nem megfelelő formátumú!"); } if (!int.TryParse(racerSalary, out int racerSalaryNumber)) { throw new ControllerException("Fizetés nem megfelelő formátumú!"); } try { NameValidator nv = new NameValidator(racerName); nv.validation(); } catch (NameNotValidNameIsEmptyException e) { throw new ControllerException(e.Message); } catch (NameNotValidFirstLetterProblemException e) { throw new ControllerException(e.Message); } try { AgeValidator av = new AgeValidator(racerAgeNumber); av.validation(); } catch (AgeIsZeroException e) { throw new ControllerException(e.Message); } catch (AgeUnderMinimumAgeException e) { throw new ControllerException(e.Message); } catch (AgeAboveMaximumAgeException e) { throw new ControllerException(e.Message); } try { SalaryValidator sv = new SalaryValidator(racerSalaryNumber); sv.validation(); } catch (SalaryZeroException e) { throw new ControllerException(e.Message); } catch (NegativeSalaryException e) { throw new ControllerException(e.Message); } catch (HighSalaryException e) { throw new ControllerException(e.Message); } Racer providedRacer = new Racer(0, racerName, racerAgeNumber, 1); var existingInTeam = teamService.getRacerFromTheTeam(teamName).Contains(providedRacer); if (existingInTeam) { throw new ControllerException("Már tagja a csapatnak a versenyző!"); } int id = teamService.getNextRacerId(); Racer newRacer = null; try { newRacer = new Racer(id, racerName, racerAgeNumber, racerSalaryNumber); } catch (NameNotValidNameIsEmptyException e) { throw new ControllerException(e.Message); } catch (NameNotValidFirstLetterProblemException e) { throw new ControllerException(e.Message); } catch (AgeIsZeroException e) { throw new ControllerException(e.Message); } catch (AgeAboveMaximumAgeException e) { throw new ControllerException(e.Message); } catch (AgeUnderMinimumAgeException e) { throw new ControllerException(e.Message); } catch (SalaryZeroException e) { throw new ControllerException(e.Message); } catch (NegativeSalaryException e) { throw new ControllerException(e.Message); } catch (HighSalaryException e) { throw new ControllerException(e.Message); } try { teamService.addReacerToTeam(teamName, newRacer); } catch (TeamException e) { throw new ControllerException(e.Message); } catch (F1Exception e) { throw new ControllerException(e.Message); } }
/// <summary> /// Versenyző adatainak módosítása /// Kösse be a Validatorokkat a metódusba! /// </summary> /// <param name="teamName">A csapat neve</param> /// <param name="oldRacerName">A versenyző régi neve</param> /// <param name="racerName">A versenyző új neve</param> /// <param name="racerAge">A versenyző új neve</param> /// <param name="racerSalary">A versenyző költsége</param> public void updateRacerInTeam(string teamName, string oldRacerName, string racerName, string racerAge, string racerSalary) { int racerAgeNumber = 0; if (!int.TryParse(racerAge, out racerAgeNumber)) { throw new ControllerException("A megadott életkor nem megfelelő alakú szám!"); } int racerSalaryNumber = 0; if (!int.TryParse(racerSalary, out racerSalaryNumber)) { throw new ControllerException("A megadott fizetés nem megfelelő alakú szám!"); } if (teamService.existRacer(racerName, racerAgeNumber)) { throw new ControllerException("Már létezik " + racerName + " nevű versenyző, aki " + racerAge + " éves."); } try { NameValidator nv = new NameValidator(racerName); nv.validation(); } catch (NameNotValidNameIsEmptyException e) { throw new ControllerException(e.Message); } catch (NameNotValidFirstLetterProblemException e) { throw new ControllerException(e.Message); } try { AgeValidator av = new AgeValidator(racerAgeNumber); av.validation(); } catch (AgeIsZeroException e) { throw new ControllerException(e.Message); } catch (AgeUnderMinimumAgeException e) { throw new ControllerException(e.Message); } catch (AgeAboveMaximumAgeException e) { throw new ControllerException(e.Message); } try { SalaryValidator sv = new SalaryValidator(racerSalaryNumber); sv.validation(); } catch (SalaryZeroException e) { throw new ControllerException(e.Message); } catch (NegativeSalaryException e) { throw new ControllerException(e.Message); } catch (HighSalaryException e) { throw new ControllerException(e.Message); } try { int racerId = teamService.getRacerId(teamName, oldRacerName); if (racerId > 0) { Racer newRacer = new Racer(racerId, racerName, racerAgeNumber, racerSalaryNumber); teamService.updateReacerInTeam(teamName, oldRacerName, newRacer); } else { throw new ControllerException("A megadott versenyőjnek nem találom az azonosítáját"); } } catch (TeamServiceExeption tse) { throw new ControllerException(tse.Message); } catch (RacerException re) { throw new ControllerException(re.Message); } }
public UnitTest1() { age = new AgeValidator(); bornNumber = new BornNumberValidator(); nameValidator = new NameValidator(); }
public Racer(int id, string name, int age, int salary) { this.id = id; try { NameValidator validator = new NameValidator(name); validator.validation(); this.name = name; } catch (NameNotValidNameIsEmptyException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + name); } catch (NameNotValidFirstLetterProblemException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + name); } try { AgeValidator ageValidator = new AgeValidator(age); ageValidator.validation(); this.age = age; } catch (AgeIsZeroException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + age); } catch (AgeUnderMinimumAgeException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + age); } catch (AgeAboveMaximumAgeException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + age); } try { SalaryValidator salaryValidator = new SalaryValidator(salary); salaryValidator.validation(); this.salary = salary; } catch (SalaryZeroException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + salary); } catch (NegativeSalaryException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + salary); } catch (HighSalaryException e) { Debug.WriteLine(e.Message); throw new RacerException(e.Message + "\n" + salary); } }