Commit cd3e219c authored by Neal Norwitz's avatar Neal Norwitz

Use unittest and make sure a few other cases don't crash

parent 8ac83f31
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()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment