From: Neal Norwitz Date: Mon, 23 Jan 2006 07:49:36 +0000 (+0000) Subject: Use unittest and make sure a few other cases don't crash X-Git-Tag: v2.5a0~764 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cd3e219cda507811631cf39612bf1ad4382ae470;p=python Use unittest and make sure a few other cases don't crash --- diff --git a/Lib/test/test_symtable.py b/Lib/test/test_symtable.py index 44a8916fd6..74a7c8559a 100644 --- a/Lib/test/test_symtable.py +++ b/Lib/test/test_symtable.py @@ -1,8 +1,8 @@ -from test.test_support import vereq, TestFailed +from test import test_support import symtable +import unittest -symbols = symtable.symtable("def f(x): return x", "?", "exec") ## XXX ## Test disabled because symtable module needs to be rewritten for new compiler @@ -21,3 +21,24 @@ symbols = symtable.symtable("def f(x): return x", "?", "exec") ## raise TestFailed("no SyntaxError for %r" % (brokencode,)) ##checkfilename("def f(x): foo)(") # parse-time ##checkfilename("def f(x): global x") # symtable-build-time + +class SymtableTest(unittest.TestCase): + def test_invalid_args(self): + self.assertRaises(TypeError, symtable.symtable, "42") + self.assertRaises(ValueError, symtable.symtable, "42", "?", "") + + def test_eval(self): + symbols = symtable.symtable("42", "?", "eval") + + def test_single(self): + symbols = symtable.symtable("42", "?", "single") + + def test_exec(self): + symbols = symtable.symtable("def f(x): return x", "?", "exec") + + +def test_main(): + test_support.run_unittest(SymtableTest) + +if __name__ == '__main__': + test_main()