def test_ground_less(term): lb, ub = bohm.ground(term) assert try_decide_less(lb, ub) is True if bohm.TRY_DECIDE_LESS_STRONG: assert try_decide_less(lb, term) is True assert try_decide_less(term, ub) is True else: assert try_decide_less(lb, term) is not False assert try_decide_less(term, ub) is not False
def test_app_less(lhs, rhs): truth_value = try_decide_less(lhs, rhs) assert truth_value in (True, False, None) if truth_value is True: expected = true elif truth_value is False: expected = false else: expected = APP(APP(QLESS, QUOTE(lhs)), QUOTE(rhs)) assert app(app(QLESS, QUOTE(lhs)), QUOTE(rhs)) is expected
def test_try_decide_less_weak(lhs, rhs): expected = try_decide_less_weak(lhs, rhs) hypothesis.assume(expected is not None) assert try_decide_less(lhs, rhs) is expected
def test_stream_enum(enum_item, expected_lb): actual = lib.stream_enum(enum_item) assert try_decide_less(expected_lb, actual) is not False