Code: Select all
import attrs
from hypothesis import given
import hypothesis.strategies as st
@attrs.frozen(kw_only=True)
class Address:
street: str
city: str
AddressStrategy = st.builds(
Address,
street=st.text(),
city=st.text()
)
@given(AddressStrategy)
def test_proper_address(address):
assert len(address.city) < 4
< /code>
Wenn ich PyTest ausführe, fängt es tatsächlich meinen Fehler auf: < /p>
address = Address(street='', city='0000') # assert len(address.city) < 4
E AssertionError: assert 4 < 4
E + where 4 = len('0000')
E + where '0000' = Address(street='', city='0000').city
main.py:23: AssertionError
< /code>
Nach den Dokumenten scheint es zu sein, dass dies möglich sein sollte.builds()
verwendet, aber wenn ich die folgenden Optionen versuche, funktioniert weder:
[*]
Code: Select all
st.register_type_strategy(Address)