def test_drop_implied_factors_unmatched_context(self): """Test that Statements aren't considered redundant because they relate to different entities.""" left = Statement( predicate=Comparison( content= "the amount that ${taller}'s height exceeded ${shorter}'s height was", sign=">=", expression="2 inches", ), terms=[Entity(name="Ann"), Entity(name="Ben")], ) right = Statement( predicate=Comparison( content= "the amount that ${taller}'s height exceeded ${shorter}'s height was", sign=">=", expression="2 feet", ), terms=[Entity(name="Alice"), Entity(name="Bob")], ) group = FactorGroup([left, right]) shorter = group.drop_implied_factors() assert len(shorter) == 2
def test_drop_implied_factors_unmatched_context(self, watt_factor): group = FactorGroup([watt_factor["f9_swap_entities"], watt_factor["f9_miles"]]) shorter = group.drop_implied_factors() assert len(shorter) == 2
def test_drop_implied_factors(self, watt_factor): group = FactorGroup([watt_factor["f8_meters"], watt_factor["f8"]]) shorter = group.drop_implied_factors() assert len(shorter) == 1 assert watt_factor["f8_meters"] in group
def test_drop_implied_factors(self, make_statement): group = FactorGroup( [make_statement["more_meters"], make_statement["more"]]) shorter = group.drop_implied_factors() assert len(shorter) == 1 assert make_statement["more_meters"] in group