Skip to content

Commit

Permalink
Add property test for expression conversion
Browse files Browse the repository at this point in the history
Ref. #691, #1106
  • Loading branch information
treiher committed Jul 15, 2022
1 parent 8e704c6 commit 773322f
Showing 1 changed file with 50 additions and 0 deletions.
50 changes: 50 additions & 0 deletions tests/property/expression_test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
from hypothesis import given, settings, strategies as st

import rflx.expression as expr
from tests.property import strategies


@given(
st.one_of(
strategies.mathematical_expressions(
st.one_of(
strategies.numbers()
| strategies.variables(strategies.identifiers())
| strategies.attributes(strategies.identifiers())
)
),
strategies.boolean_relations(
st.one_of(strategies.aggregates(strategies.numbers()) | strategies.strings()),
),
strategies.boolean_expressions(
st.one_of(
strategies.mathematical_expressions(
st.one_of(
strategies.numbers()
| strategies.variables(strategies.identifiers())
| strategies.attributes(strategies.identifiers())
)
)
)
),
strategies.calls(
st.one_of(
strategies.numbers()
| strategies.variables(strategies.identifiers())
| strategies.attributes(strategies.identifiers())
)
),
strategies.quantified_expressions(
st.one_of(
strategies.numbers()
| strategies.variables(strategies.identifiers())
| strategies.attributes(strategies.identifiers())
)
),
strategies.strings(),
strategies.aggregates(strategies.numbers()),
)
)
@settings(deadline=None)
def test_conversion(expression: expr.Expr) -> None:
assert expression.ada_expr().rflx_expr() == expression

0 comments on commit 773322f

Please sign in to comment.