AoC20/test/day4_test.exs

52 lines
1.2 KiB
Elixir

defmodule Day4Test do
use ExUnit.Case
doctest Day4
test "checks invalid passports" do
passports =
"""
eyr:1972 cid:100
hcl:#18171d ecl:amb hgt:170 pid:186cm iyr:2018 byr:1926
iyr:2019
hcl:#602927 eyr:1967 hgt:170cm
ecl:grn pid:012533040 byr:1946
hcl:dab227 iyr:2012
ecl:brn hgt:182cm pid:021572410 eyr:2020 byr:1992 cid:277
hgt:59cm ecl:zzz
eyr:2038 hcl:74454a iyr:2023
pid:3556412378 byr:2007
"""
|> String.trim()
|> String.split("\n\n")
|> Day4.parse_input()
assert Day4.count_valid(passports, true) == 0
end
test "checks valid passports" do
passports =
"""
pid:087499704 hgt:74in ecl:grn iyr:2012 eyr:2030 byr:1980
hcl:#623a2f
eyr:2029 ecl:blu cid:129 byr:1989
iyr:2014 pid:896056539 hcl:#a97842 hgt:165cm
hcl:#888785
hgt:164cm byr:2001 iyr:2015 cid:88
pid:545766238 ecl:hzl
eyr:2022
iyr:2010 hgt:158cm hcl:#b6652a ecl:blu byr:1944 eyr:2021 pid:093154719
"""
|> String.trim()
|> String.split("\n\n")
|> Day4.parse_input()
assert Day4.count_valid(passports, true) == 4
end
end