コード例 #1
0
def test_josephus_output_order_by_next(people_example):
    jos = Josephus()
    jos.start = 2
    jos.step = 2
    jos.people = people_example

    assert next(jos) == Person('Peter', 14)
    assert next(jos) == Person('Jack', 13)
    assert next(jos) == Person('Bob', 12)
    with pytest.raises(StopIteration):
        next(jos)
コード例 #2
0
def test_josephus_query_list(people_example):
    jos = Josephus()
    jos.start = 2
    jos.step = 2
    jos.people = people_example
    result = jos.query_list()

    assert result == [
        Person('Peter', 14),
        Person('Jack', 13),
        Person('Bob', 12)
    ]
コード例 #3
0
def test_josephus_len(people_example):
    jos = Josephus()
    jos.people = people_example

    assert len(jos) == 3
コード例 #4
0
def test_josephus_pop(people_example):
    jos = Josephus()
    jos.people = people_example
    jos.pop(1)

    assert jos.people == [Person('Bob', 12), Person('Peter', 14)]