Ejemplo n.º 1
0
def test_blank_box():
    box = [[
        [Cell(*((False,) * 6)) for _ in range(2)] for _ in range(2)
    ] for _ in range(2)]
    rendered_box = render_box(box)
    assert all(
        left == right for left, right in zip(rendered_box, BLANK_LEVEL)
    )
Ejemplo n.º 2
0
def test_both_top_and_bottom_open():
    cell = Cell(
        left=False,
        right=False,
        front=False,
        back=False,
        top=True,
        bottom=True,
    )
    rendered = render_cell(cell)
    assert rendered[2][5] == ' '
    assert rendered[2][4] == 'U'
    assert rendered[2][6] == 'D'
Ejemplo n.º 3
0
def test_lateral_directions():
    cell = Cell(
        left=OUT,
        right=OUT,
        front=OUT,
        back=OUT,
        top=False,
        bottom=False,
    )
    rendered = render_cell(cell)
    assert rendered[2][2] == '<'
    assert rendered[2][8] == '>'
    assert rendered[1][5] == '^'
    assert rendered[3][5] == 'v'
Ejemplo n.º 4
0
def test_single_bottom_opening():
    cell = Cell(
        left=False,
        right=False,
        front=False,
        back=False,
        top=False,
        bottom=True,
    )
    rendered = render_cell(cell)
    assert rendered[2][5] == 'D'
    # sanity check
    assert rendered[2][4] == ' '
    assert rendered[2][6] == ' '
Ejemplo n.º 5
0
def test_open_back():
    cell = Cell(
        left=False,
        right=False,
        front=False,
        back=OUT,
        top=False,
        bottom=False,
    )
    expected = (
        list("-----------"),
        list("|         |"),
        list("|         |"),
        list("|    v    |"),
        list("-         -"),
    )
    rendered = render_cell(cell)
    assert all(left == right for left, right in zip(rendered, expected))
Ejemplo n.º 6
0
def generate_empty_box(levels, depth, width):
    return tuple((tuple((tuple((Cell(*((False, ) * 6)) for _ in range(width)))
                         for _ in range(depth))) for _ in range(levels)))
Ejemplo n.º 7
0
def test_blank_line():
    line = map(copy.deepcopy, (Cell(*((False, ) * 6)) for i in range(3)))
    rendered_line = render_line(line)
    assert all(left == right for left, right in zip(rendered_line, BLANK_LINE))
Ejemplo n.º 8
0
def test_blank_cell():
    cell = Cell(False, False, False, False, False, False)
    rendered = render_cell(cell)
    assert rendered == BLANK_CELL
Ejemplo n.º 9
0
def test_blank_level():
    level = [[Cell(*((False, ) * 6)) for _ in range(3)] for _ in range(3)]
    rendered_level = render_level(level)
    assert all(left == right
               for left, right in zip(rendered_level, BLANK_LEVEL))