diff --git a/tests/parse/test_conditional.py b/tests/parse/test_conditional.py index 2420581..bb2defc 100644 --- a/tests/parse/test_conditional.py +++ b/tests/parse/test_conditional.py @@ -37,7 +37,7 @@ import enum from hypothesis import assume, given -from hypothesis.strategies import data, integers, just, one_of +from hypothesis.strategies import composite, data, integers, just, one_of from src.ast_types import Conditional from src.parse import ( @@ -134,9 +134,17 @@ assert "Should never be called" +# Draws something that isn't a mock statement +@composite +def draw_not_statement(draw): + token = draw(draw_token_random()) + assume(token.value not in ["MockTest", "MockSuccess", "MockFailure"]) + return token + + # Draws the wrong statement for a given conditional position def draw_wrong_statement_at(index): - random = draw_token_random() + random = draw_not_statement() test = just(static_token_by_value("MockTest")) success = just(static_token_by_value("MockSuccess")) failure = just(static_token_by_value("MockFailure"))