added testing, using pipes
This commit is contained in:
parent
8505476cbb
commit
51571a83cf
@ -2,12 +2,5 @@ import sys
|
|||||||
|
|
||||||
from maze import parse_maze, CS235Maze
|
from maze import parse_maze, CS235Maze
|
||||||
|
|
||||||
m = parse_maze(sys.argv[1])
|
m = parse_maze(sys.stdin.read())
|
||||||
assert m[7][0][0] == 0
|
|
||||||
assert m[7][3][0] == 1
|
|
||||||
assert m[7][0][1] == 0
|
|
||||||
assert m[3][3][3] == 1
|
|
||||||
assert m[5][2][6] == 1
|
|
||||||
assert m[7][5][4] == 0
|
|
||||||
|
|
||||||
print CS235Maze(m)
|
print CS235Maze(m)
|
||||||
|
@ -30,12 +30,10 @@ def make_maze(size=8):
|
|||||||
return CS235Maze(r, size)
|
return CS235Maze(r, size)
|
||||||
|
|
||||||
|
|
||||||
def parse_maze(filename):
|
def parse_maze(maze):
|
||||||
f = open(filename, 'r')
|
|
||||||
t = f.read()
|
|
||||||
soilded = [[[int(i) for i in j.split()]
|
soilded = [[[int(i) for i in j.split()]
|
||||||
for j in k.split('\n')]
|
for j in k.split('\n')]
|
||||||
for k in t.split('\n\n') if k]
|
for k in maze.split('\n\n') if k]
|
||||||
cleaned = derp_transpose(soilded)
|
cleaned = derp_transpose(soilded)
|
||||||
return cleaned
|
return cleaned
|
||||||
|
|
||||||
|
91
maze/test_parsing.py
Normal file
91
maze/test_parsing.py
Normal file
@ -0,0 +1,91 @@
|
|||||||
|
import unittest
|
||||||
|
|
||||||
|
from maze import parse_maze
|
||||||
|
|
||||||
|
|
||||||
|
class MazeTests(unittest.TestCase):
|
||||||
|
def setUp(self):
|
||||||
|
s = """\
|
||||||
|
1 0 0 0 1 0 0 0
|
||||||
|
0 1 1 1 1 1 0 0
|
||||||
|
0 1 0 1 1 0 0 0
|
||||||
|
0 1 1 1 0 0 1 1
|
||||||
|
1 1 0 0 0 1 0 0
|
||||||
|
1 1 1 0 0 1 1 0
|
||||||
|
1 0 1 0 0 1 0 1
|
||||||
|
0 0 1 0 1 0 1 0
|
||||||
|
|
||||||
|
1 0 0 0 0 1 0 0
|
||||||
|
1 1 0 0 0 1 0 1
|
||||||
|
1 0 1 0 1 1 1 1
|
||||||
|
0 0 0 0 1 0 0 1
|
||||||
|
0 0 0 0 1 0 1 1
|
||||||
|
0 0 0 1 0 0 1 0
|
||||||
|
1 0 1 0 1 0 0 0
|
||||||
|
0 1 0 1 1 0 0 1
|
||||||
|
|
||||||
|
1 1 1 0 0 0 0 1
|
||||||
|
1 0 0 1 1 1 0 1
|
||||||
|
1 0 0 1 1 0 1 0
|
||||||
|
0 1 0 1 0 1 1 1
|
||||||
|
1 0 1 1 1 1 0 0
|
||||||
|
0 1 0 1 1 0 0 0
|
||||||
|
1 1 0 1 0 0 0 1
|
||||||
|
1 1 1 0 0 0 1 0
|
||||||
|
|
||||||
|
1 1 0 0 1 0 1 1
|
||||||
|
1 1 1 1 1 0 0 1
|
||||||
|
1 1 0 0 1 0 1 1
|
||||||
|
0 1 1 1 1 1 0 1
|
||||||
|
0 1 1 0 0 0 1 0
|
||||||
|
0 1 0 1 0 0 0 0
|
||||||
|
1 1 0 1 0 1 1 0
|
||||||
|
0 0 0 0 1 1 1 0
|
||||||
|
|
||||||
|
1 0 0 0 1 1 1 0
|
||||||
|
0 1 0 1 0 1 0 1
|
||||||
|
1 0 0 1 0 0 0 0
|
||||||
|
1 1 1 0 0 1 0 0
|
||||||
|
0 1 1 0 0 0 1 0
|
||||||
|
0 1 0 1 0 1 0 0
|
||||||
|
1 0 0 1 1 1 0 1
|
||||||
|
1 1 1 1 0 0 0 1
|
||||||
|
|
||||||
|
1 0 1 1 1 0 0 0
|
||||||
|
0 0 0 1 0 0 1 0
|
||||||
|
0 1 1 0 0 0 0 1
|
||||||
|
0 0 0 1 0 0 0 1
|
||||||
|
1 0 1 1 0 1 1 0
|
||||||
|
1 0 1 0 1 1 0 1
|
||||||
|
0 0 0 0 0 0 1 1
|
||||||
|
1 1 0 0 1 0 0 0
|
||||||
|
|
||||||
|
0 0 0 0 0 0 1 1
|
||||||
|
1 0 0 1 1 1 0 1
|
||||||
|
0 1 0 1 1 1 1 1
|
||||||
|
0 1 1 0 0 1 1 0
|
||||||
|
1 1 1 0 1 1 1 1
|
||||||
|
1 0 1 1 0 1 0 0
|
||||||
|
0 0 0 1 0 0 1 0
|
||||||
|
1 1 1 0 1 1 1 0
|
||||||
|
|
||||||
|
1 1 1 1 0 0 1 0
|
||||||
|
0 0 1 0 0 1 0 1
|
||||||
|
0 1 1 1 0 1 0 0
|
||||||
|
1 1 1 0 1 0 0 1
|
||||||
|
0 0 1 0 1 0 0 0
|
||||||
|
1 1 1 1 0 1 0 1
|
||||||
|
1 0 1 1 1 1 1 0
|
||||||
|
1 0 0 0 1 1 1 1
|
||||||
|
|
||||||
|
"""
|
||||||
|
self.m = parse_maze(s)
|
||||||
|
|
||||||
|
|
||||||
|
def test_at_indices(self):
|
||||||
|
assert self.m[7][0][0] == 0
|
||||||
|
assert self.m[7][3][0] == 1
|
||||||
|
assert self.m[7][0][1] == 0
|
||||||
|
assert self.m[3][3][3] == 1
|
||||||
|
assert self.m[5][2][6] == 1
|
||||||
|
assert self.m[7][5][4] == 0
|
Loading…
Reference in New Issue
Block a user