示例#1
0
def test_list_get_random_and_remove():
    random_list = RandomList(["strawberry", "vanilla", "chocolate"])
    random_item = random_list.get_random_and_remove()
    possible_items = ["strawberry", "vanilla", "chocolate"]
    assert (
        random_item in possible_items and
        len(random_list._contents) == 2
    )
示例#2
0
def test_group_get_list_items():
    meat_list = RandomList(["beef", "pork", "chicken"])
    veggie_list = RandomList(["carrot", "lettuce", "celery"])

    random_group = RandomGroup([meat_list, veggie_list])
    lists = random_group.get_list_items()

    assert lists == [["beef", "pork", "chicken"], ["carrot", "lettuce", "celery"]]
示例#3
0
def test_list_get_contents():
    contents = [
        {"item": "strawberry", "probability": 1},
        {"item": "vanilla", "probability": 1},
        {"item": "chocolate", "probability": 1}
    ]
    random_list = RandomList(contents)
    assert random_list.get_contents() == contents
示例#4
0
def test_list_construction():
    random_list = RandomList(input_list)
    offset_list = [
        {"item": "strawberry", "probability": 2},
        {"item": "vanilla", "probability": 3},
        {"item": "chocolate", "probability": 4}
    ]
    assert random_list._offset_contents == offset_list
示例#5
0
def test_list_adjust_probability():
    random_list = RandomList(input_list)
    random_list._adjust_probability("strawberry", -1)
    random_list._adjust_probability("vanilla", -1)
    random_list._adjust_probability("chocolate", 3)
    adjusted_list = [
        {"item": "strawberry", "probability": 1},
        {"item": "chocolate", "probability": 5}
    ]
    assert random_list._offset_contents == adjusted_list
示例#6
0
def test_group_construction():
    meat_list = RandomList(["beef", "pork", "chicken"])
    veggie_list = RandomList(["carrot", "lettuce", "celery"])

    random_group = RandomGroup([meat_list, veggie_list])
    random_item = random_group.get_random()

    assert random_item in meat_list.get_items() or random_item in veggie_list.get_items()
示例#7
0
def test_group_get_contents():
    meat_list = RandomList(["beef", "pork", "chicken"])
    veggie_list = RandomList([{
        "item": "carrot",
        "probability": 4
    }])

    random_group = RandomGroup([meat_list, veggie_list])
    contents = random_group.get_contents()

    assert contents == [
        {
            "item": [
                {"item": "beef", "probability": 1},
                {"item": "pork", "probability": 1},
                {"item": "chicken", "probability": 1}
            ],
            "probability": 1
        },
        {
            "item": [{"item": "carrot", "probability": 4}],
            "probability": 1
        }
    ]
示例#8
0
def test_list_item_count():
    random_list = RandomList(input_list)
    assert random_list.item_count() == 3
示例#9
0
def test_list_items():
    meat_list = RandomList(["beef", "pork", "chicken"])
    assert meat_list.get_items() == ["beef", "pork", "chicken"]
示例#10
0
def test_list_reset_contents():
    random_list = RandomList(input_list)
    random_list.get_random_and_remove()
    random_list.reset_contents()
    assert random_list._contents == format_list(input_list)