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 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 @@
 ##        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()