def test_extract_comps(self): cases = [('x == 3', ['x == 3']), ('x == 3 and y == 4', ['x == 3', 'y == 4']), ('x < 3 and not y > 4', ['x < 3', 'y > 4']), ('x < 3 + (y > 4)', ['x < (3 + (y > 4))', 'y > 4']), ] for expr, comps in cases: result = ExprManip.extract_comps(expr) assert result == sets.Set(comps)