Esempio n. 1
0
def test_does_not_hide_error_in_generate():
    def broken(r):
        raise ValueError()

    machine = TestMachine()
    machine.add(generate(broken, "broken"))
    with pytest.raises(ValueError):
        machine.run()
Esempio n. 2
0
Find an example demonstrating that lists can contain the same element multiple
times.

Example output:
    t1 = 1
    t2 = [t1, t1]
    assert unique(t2)
"""

from testmachine import TestMachine
from testmachine.common import ints, lists

machine = TestMachine()

# Populate the ints varstack with integer values
ints(machine)

# Populate the intlists varstack with lists whose elements are drawn from the
# ints varstack
lists(machine, source="ints", target="intlists")

# Check whether a list contains only unique elements. If it contains duplicates
# raise an error.
machine.check(
    lambda s: len(s) == len(set(s)), argspec=("intlists",), name="unique"
)

if __name__ == '__main__':
    # Find a program that creates a list with non-unique elements.
    machine.run()