def test_mutate_strange_cases(self): import parser ast = parser.source2ast('if a: b') ast.mutate(self.BaseVisitor()) src = ''' try: b except Exception: pass ''' ast = parser.source2ast(src) ast.mutate(self.BaseVisitor()) src = '{1:2}' ast = parser.source2ast(src) ast.mutate(self.BaseVisitor()) src = '1 > 3' ast = parser.source2ast(src) ast.mutate(self.BaseVisitor())
def get_statements(source): module = source2ast(source) return module.node.nodes
def expr(src): from parser import source2ast module = source2ast(src) return module.node.nodes[0].expr