35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
import pytest
|
|
|
|
from main import check_fresh, part1, part2
|
|
|
|
test_ranges = [(3, 5), (10, 14), (16, 20), (12, 18)]
|
|
|
|
|
|
@pytest.mark.parametrize('given, id_ranges, expected',
|
|
[
|
|
(1, test_ranges, False),
|
|
(5, test_ranges, True),
|
|
(8, test_ranges, False),
|
|
(11, test_ranges, True),
|
|
(17, test_ranges, True),
|
|
(32, test_ranges, False)
|
|
])
|
|
def test_fresh_checker(given, id_ranges, expected):
|
|
assert check_fresh(id_ranges, given) == expected
|
|
|
|
|
|
@pytest.mark.parametrize('ids, id_ranges, expected',
|
|
[
|
|
([1,5,8,11,17,32], test_ranges, 3)
|
|
])
|
|
def test_part1(ids, id_ranges, expected):
|
|
assert part1(id_ranges, ids) == expected
|
|
|
|
|
|
@pytest.mark.parametrize('id_ranges, expected',
|
|
[
|
|
(test_ranges, 14),
|
|
])
|
|
def test_part2(id_ranges, expected):
|
|
assert part2(id_ranges) == expected
|