public void HasRequiredFields() { var input = @"ecl:gry pid:860033327 eyr:2020 hcl:#fffffd byr:1937 iyr:2017 cid:147 hgt:183cm iyr:2013 ecl:amb cid:350 eyr:2023 pid:028048884 hcl:#cfa07d byr:1929 hcl:#ae17e1 iyr:2013 eyr:2024 ecl:brn pid:760753108 byr:1931 hgt:179cm hcl:#cfa07d eyr:2025 pid:166559648 iyr:2011 ecl:brn hgt:59in"; var passportFactory = new PassportFactory(); var passports = PassportFactory.Create(input); var passportValidator = new PassportValidator(); var validPassports = passports .Where(passport => passportValidator.HasRequiredFields(passport)) .ToList(); Assert.Equal(2, validPassports.Count); }
public override int Part1(string input) { var factory = new PassportFactory(); var validator = new PassportValidator(); var passports = PassportFactory.Create(input); var validPassports = passports.Where(passport => validator.HasRequiredFields(passport)); return(validPassports.Count()); }
public void HasValidFields(string input, int numValid) { var passportFactory = new PassportFactory(); var passports = PassportFactory.Create(input); var passportValidator = new PassportValidator(); var actual = passports .Where(passport => passportValidator.ValidateFields(passport)) .ToList(); Assert.Equal(numValid, actual.Count); }
public void Create() { var input = @"ecl:gry pid:860033327 eyr:2020 hcl:#fffffd byr:1937 iyr:2017 cid:147 hgt:183cm iyr:2013 ecl:amb cid:350 eyr:2023 pid:028048884 hcl:#cfa07d byr:1929 hcl:#ae17e1 iyr:2013 eyr:2024 ecl:brn pid:760753108 byr:1931 hgt:179cm hcl:#cfa07d eyr:2025 pid:166559648 iyr:2011 ecl:brn hgt:59in"; var passports = PassportFactory.Create(input); Assert.NotEmpty(passports); Assert.Equal(4, passports.Count); }