def test_rule_has_consequence_when_false_different_field(): def condition(subject): return subject['fruit'] == 'strawberry' def consequence(subject): subject['color'] = 'red' rule = Rule('all strawberries are red', condition, consequence, {'fruit': 'strawberry'}, ('fruit',)) assert rule.has_consequence(condition) is False
def test_rule_has_consequence_when_true(): def condition(subject): return subject['fruit'] == 'strawberry' def consequence(subject): subject['color'] = 'red' rule = Rule('all strawberries are red', condition, consequence, {'fruit': 'strawberry'}, ('fruit',)) assert rule.has_consequence({'color': 'red'})