예제 #1
0
파일: test_path.py 프로젝트: PyCQA/baron
def test_position_advance():
    position = Position((1, 1))
    position.advance_columns(3)
    assert position == (1, 4)
    position.advance_line()
    assert position == (2, 1)
    position.advance_columns(4)
    assert position == (2, 5)
예제 #2
0
def test_postion_around_the_world():
    assert make_position(1, 2) == Position.from_tuple(make_position(1, 2).to_tuple())
예제 #3
0
def test_position_opposite():
    assert Position((1, 2)) == - Position((-1, -2))
예제 #4
0
def test_position_bool():
    assert bool(Position((1, 2)))
    assert not bool(Position((-1, 2)))
    assert not bool(Position((1, -2)))
    assert not bool(Position((-1, -2)))
예제 #5
0
def test_position_equality():
    assert Position((1, 2)) == Position((1, 2))
    assert Position((1, 2)) == (1, 2)
    assert Position((1, 2)) != Position((2, 1))
    assert Position((1, 2)) != (2, 1)
예제 #6
0
def test_position_compare():
    assert Position((1, 2)) < Position((1, 3))
    assert Position((0, 9)) < Position((1, 3))
    assert Position((1, 2)) <= Position((1, 3))
    assert Position((0, 9)) <= Position((1, 3))
    assert Position((1, 2)) <= Position((1, 2))
    assert Position((1, 2)) == Position((1, 2))

    assert Position((1, 4)) > Position((1, 3))
    assert Position((2, 0)) > Position((1, 3))
    assert Position((1, 4)) >= Position((1, 3))
    assert Position((2, 0)) >= Position((1, 3))
    assert Position((1, 4)) >= Position((1, 4))
    assert Position((1, 4)) == Position((1, 4))
예제 #7
0
def test_postion_around_the_world():
    assert Position((1, 2)) == Position(Position((1, 2)).to_tuple())
예제 #8
0
def test_position_right():
    assert Position((1, 2)).right == (1, 3)
예제 #9
0
def test_position_left():
    assert Position((1, 2)).left == (1, 1)
예제 #10
0
def test_position_arithmetic():
    assert Position((1, 2)) + Position((1, 2)) == (2, 4)
    assert Position((1, 2)) + (1, 2) == (2, 4)
    assert Position((1, 2)) - Position((2, 1)) == (-1, 1)
    assert Position((1, 2)) - (2, 1) == (-1, 1)