summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeal Norwitz <nnorwitz@gmail.com>2006-01-23 07:49:36 (GMT)
committerNeal Norwitz <nnorwitz@gmail.com>2006-01-23 07:49:36 (GMT)
commitcd3e219cda507811631cf39612bf1ad4382ae470 (patch)
tree314af85072d0f60d991fd7891c7998f0fa34c85f
parent8ac83f31524ab9214fd25ef307c16e1bf25df745 (diff)
downloadcpython-cd3e219cda507811631cf39612bf1ad4382ae470.zip
cpython-cd3e219cda507811631cf39612bf1ad4382ae470.tar.gz
cpython-cd3e219cda507811631cf39612bf1ad4382ae470.tar.bz2
Use unittest and make sure a few other cases don't crash
-rw-r--r--Lib/test/test_symtable.py25
1 files changed, 23 insertions, 2 deletions
diff --git a/Lib/test/test_symtable.py b/Lib/test/test_symtable.py
index 44a8916..74a7c85 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()