Advent-of-Code/2020/11/test_code.py
2020-12-11 11:52:24 +01:00

44 lines
2.1 KiB
Python

# SPDX-License-Identifier: MIT
# Copyright (c) 2020 Akumatic
from code import part1, part2, iterate
def test():
input = [['L', '.', 'L', 'L', '.', 'L', 'L', '.', 'L', 'L'],
['L', 'L', 'L', 'L', 'L', 'L', 'L', '.', 'L', 'L'],
['L', '.', 'L', '.', 'L', '.', '.', 'L', '.', '.'],
['L', 'L', 'L', 'L', '.', 'L', 'L', '.', 'L', 'L'],
['L', '.', 'L', 'L', '.', 'L', 'L', '.', 'L', 'L'],
['L', '.', 'L', 'L', 'L', 'L', 'L', '.', 'L', 'L'],
['.', '.', 'L', '.', 'L', '.', '.', '.', '.', '.'],
['L', 'L', 'L', 'L', 'L', 'L', 'L', 'L', 'L', 'L'],
['L', '.', 'L', 'L', 'L', 'L', 'L', 'L', '.', 'L'],
['L', '.', 'L', 'L', 'L', 'L', 'L', '.', 'L', 'L']]
assert iterate(input) == [
['#', '.', '#', 'L', '.', 'L', '#', '.', '#', '#'],
['#', 'L', 'L', 'L', '#', 'L', 'L', '.', 'L', '#'],
['L', '.', '#', '.', 'L', '.', '.', '#', '.', '.'],
['#', 'L', '#', '#', '.', '#', '#', '.', 'L', '#'],
['#', '.', '#', 'L', '.', 'L', 'L', '.', 'L', 'L'],
['#', '.', '#', 'L', '#', 'L', '#', '.', '#', '#'],
['.', '.', 'L', '.', 'L', '.', '.', '.', '.', '.'],
['#', 'L', '#', 'L', '#', '#', 'L', '#', 'L', '#'],
['#', '.', 'L', 'L', 'L', 'L', 'L', 'L', '.', 'L'],
['#', '.', '#', 'L', '#', 'L', '#', '.', '#', '#']]
assert iterate(input, adjacent=False) == [
['#', '.', 'L', '#', '.', 'L', '#', '.', 'L', '#'],
['#', 'L', 'L', 'L', 'L', 'L', 'L', '.', 'L', 'L'],
['L', '.', 'L', '.', 'L', '.', '.', '#', '.', '.'],
['#', '#', 'L', '#', '.', '#', 'L', '.', 'L', '#'],
['L', '.', 'L', '#', '.', 'L', 'L', '.', 'L', '#'],
['#', '.', 'L', 'L', 'L', 'L', '#', '.', 'L', 'L'],
['.', '.', '#', '.', 'L', '.', '.', '.', '.', '.'],
['L', 'L', 'L', '#', '#', '#', 'L', 'L', 'L', '#'],
['#', '.', 'L', 'L', 'L', 'L', 'L', '#', '.', 'L'],
['#', '.', 'L', '#', 'L', 'L', '#', '.', 'L', '#']]
assert part1(input) == 37
assert part2(input) == 26
print("Passed tests for", input)
if __name__ == "__main__":
test()