class TestBaseVisitorVisitExprAndPass: def setUp(self): self.v = BaseVisitor('test.jpx', {}, 2) self.v.visit_Str = lambda n: self.v.output(n.s) self.v.visit_Module(ast.Module([])) def test_expr(self): self.v.visit(ast.Expr(ast.Str('foo'))) assert self.v.stack[-1].body == [' ', 'foo', ';\n'] def test_pass(self): self.v.visit(ast.Pass()) assert self.v.stack[-1].body == [] @raises(NotImplementedError) def test_generic_visit(self): self.v.visit(ast.Print())