diff options
-rwxr-xr-x | solver.py | 41 | ||||
-rw-r--r-- | tests_solver/test_solver.py | 49 |
2 files changed, 49 insertions, 41 deletions
@@ -55,16 +55,6 @@ def is_swappable(kana1, kana2): return False -def test_is_swappable(): - assert is_swappable(Kana("norm"), Kana("norm")) - assert is_swappable(Kana("froz"), Kana("norm")) - assert is_swappable(Kana("norm"), Kana("empt")) - assert is_swappable(Kana("empt"), Kana("froz")) - assert not is_swappable(Kana("norm"), Kana("rock")) - assert not is_swappable(Kana("froz"), Kana("froz")) - assert not is_swappable(Kana("empt"), Kana("empt")) - - class KanaGrid: valid_types_for_chain = ("froz", "norm", "rock") @@ -235,37 +225,6 @@ class KanaGrid: ) -def test_kana_grid(): - - inital_grid = [ - kana_void , Kana("myst", "su"), kana_void , Kana("myst", "ko"), kana_void , - Kana("froz", "se"), Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "so"), - Kana("froz", "ku"), Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "no"), - kana_void , kana_void , Kana("rock", "ka"), kana_void , kana_void , - ] - initial_grid_size = 5, 4 - chain_target = 7 - - expected_grid = [ - kana_void , Kana("myst", "su"), kana_void , Kana("myst", "ko"), kana_void , - Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "se"), Kana("froz", "so"), - Kana("froz", "ku"), Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "no"), - kana_void , kana_void , Kana("rock", "ka"), kana_void , kana_void , - ] - - kanagrid_orig = KanaGrid(initial_grid_size, initial_grid) - kanagrid_new = kanagrid_orig.action(pos=(0, 1), action_type="right") - - print("kanagrid_orig") - print(kanagrid_orig) - print("kanagrid_new") - print(kanagrid_new) - print("expected_grid") - display_grid(expected_grid, initial_grid_size) - - assert kanagrid_new.grid == expected_grid - - def repr_grid(grid, grid_size): lines = [] kana_iter = iter(grid) diff --git a/tests_solver/test_solver.py b/tests_solver/test_solver.py new file mode 100644 index 0000000..e2b45a5 --- /dev/null +++ b/tests_solver/test_solver.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 + +import os +import sys + +sys.path.append(os.getcwd()) + +from solver import * + +def test_is_swappable(): + assert is_swappable(Kana("norm", "su"), Kana("norm", "su")) + assert is_swappable(Kana("froz", "su"), Kana("norm", "su")) + assert is_swappable(Kana("norm", "su"), Kana("empt")) + assert is_swappable(Kana("empt"), Kana("froz", "su")) + assert not is_swappable(Kana("norm", "su"), Kana("rock", "su")) + assert not is_swappable(Kana("froz", "su"), Kana("froz", "su")) + assert not is_swappable(Kana("empt"), Kana("empt")) + + +def test_kana_grid(): + + initial_grid = [ + kana_void , Kana("myst", "su"), kana_void , Kana("myst", "ko"), kana_void , + Kana("froz", "se"), Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "so"), + Kana("froz", "ku"), Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "no"), + kana_void , kana_void , Kana("rock", "ka"), kana_void , kana_void , + ] + initial_grid_size = 5, 4 + chain_target = 7 + + expected_grid = [ + kana_void , Kana("myst", "su"), kana_void , Kana("myst", "ko"), kana_void , + Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "se"), Kana("froz", "so"), + Kana("froz", "ku"), Kana("empt" ), Kana("empt" ), Kana("empt" ), Kana("froz", "no"), + kana_void , kana_void , Kana("rock", "ka"), kana_void , kana_void , + ] + + kanagrid_orig = KanaGrid(initial_grid_size, initial_grid) + kanagrid_new = kanagrid_orig.action(pos=(0, 1), action_type="right") + + print("kanagrid_orig") + print(kanagrid_orig) + print("kanagrid_new") + print(kanagrid_new) + print("expected_grid") + display_grid(expected_grid, initial_grid_size) + + assert kanagrid_new.grid == expected_grid + |