41 lines
1.5 KiB
Python
41 lines
1.5 KiB
Python
import pytest
|
|
|
|
from main import process_line, find_all_accessible_rolls
|
|
|
|
@pytest.mark.parametrize('lines, expected',
|
|
[
|
|
([
|
|
'..@@.@@@@.',
|
|
'@@@.@.@.@@',
|
|
'@@@@@.@.@@',
|
|
'@.@@@@..@.',
|
|
'@@.@@@@.@@',
|
|
'.@@@@@@@.@',
|
|
'.@.@.@.@@@',
|
|
'@.@@@.@@@@',
|
|
'.@@@@@@@@.',
|
|
'@.@.@@@.@.'
|
|
], 13),
|
|
])
|
|
def test_process_line(lines, expected):
|
|
assert process_line(lines) == expected
|
|
|
|
|
|
@pytest.mark.parametrize('lines, expected',
|
|
[
|
|
([
|
|
'..@@.@@@@.',
|
|
'@@@.@.@.@@',
|
|
'@@@@@.@.@@',
|
|
'@.@@@@..@.',
|
|
'@@.@@@@.@@',
|
|
'.@@@@@@@.@',
|
|
'.@.@.@.@@@',
|
|
'@.@@@.@@@@',
|
|
'.@@@@@@@@.',
|
|
'@.@.@@@.@.'
|
|
], 43),
|
|
])
|
|
def test_iterative_processing(lines, expected):
|
|
assert find_all_accessible_rolls(lines) == expected
|