diff -r f4db69302508 Lib/test/test_cgitb.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Lib/test/test_cgitb.py Mon Mar 14 18:59:33 2011 -0400 @@ -0,0 +1,64 @@ +from test.support import run_unittest +import unittest +import sys +import subprocess +import cgitb + +class TestCgitb(unittest.TestCase): + + def setUp(self): + self.textTests = [ + "", + "abc", + "qwertyui123456 ##!@#", + "Hello Wordl!\n", + "1!\n765\n"] + + def test_fonts(self): + for text in self.textTests: + if text: + self.assertEqual(cgitb.small(text), + "" + text + "") + self.assertEqual(cgitb.strong(text), + "" + text + "") + self.assertEqual(cgitb.grey(text), + '' + text + "") + else: + self.assertEqual(cgitb.small(text), '') + self.assertEqual(cgitb.strong(text), '') + self.assertEqual(cgitb.grey(text), '') + + def test_html(self): + try: + raise ValueError("Hello World") + except ValueError as err: + self.assertIn('' + + ' 
ValueError' + + '
', cgitb.html(sys.exc_info())) + + def test_text(self): + try: + raise ValueError("Hello World") + except ValueError as err: + self.assertIn('ValueError: Hello World', + cgitb.text(sys.exc_info())) + + def test_hook(self): + proc = subprocess.Popen([sys.executable, '-c', ('import cgitb;' + 'cgitb.enable();' + 'raise ValueError("Hello World")')], + stdout = subprocess.PIPE) + x = proc.stdout.read() + self.addCleanup(proc.stdout.close) + self.assertIn(b'' + + b' 
ValueError' + + b'
', x) + + + + +def test_main(): + run_unittest(TestCgitb) + +if __name__ == "__main__": + test_main()