summaryrefslogtreecommitdiffstats
path: root/day2/test_init.py
blob: dc1ab40bdd0c82d8dc01e57bdedd0b8be8b8bfd0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# -*- coding: utf-8 -*-
import pytest

from day2 import AssignmentOne, AssignmentTwo


class TestAssignmentOne:
    data = [
        (range(11, 23), [11, 22]),
        (range(95, 116), [99]),
        (range(998, 1013), [1010]),
        (range(1188511880, 1188511891), [1188511885]),
        (range(222220, 222225), [222222]),
        (range(1698522, 1698529), []),
        (range(446443, 446450), [446446]),
        (range(38593856, 38593863), [38593859]),
    ]

    @pytest.mark.parametrize("r,invalid", data)
    def test_find_invalid_ids(self, r: range, invalid: list[str]):
        assert list(AssignmentOne.find_invalid_ids(r)) == invalid


class TestAssignmentTwo:
    data = [
        (range(11, 23), [11, 22]),
        (range(95, 116), [99, 111]),
        (range(998, 1013), [999, 1010]),
        (range(1188511880, 1188511891), [1188511885]),
        (range(222220, 222225), [222222]),
        (range(1698522, 1698529), []),
        (range(446443, 446450), [446446]),
        (range(38593856, 38593863), [38593859]),
        (range(565653, 565660), [565656]),
        (range(824824821, 824824828), [824824824]),
        (range(2121212118, 2121212125), [2121212121]),
    ]

    @pytest.mark.parametrize("r,invalid", data)
    def test_find_invalid_ids(self, r: range, invalid: list[str]):
        assert list(AssignmentTwo.find_invalid_ids(r)) == invalid