summaryrefslogtreecommitdiff
path: root/Lib
diff options
context:
space:
mode:
authorMichael W. Hudson <mwh@python.net>2005-02-15 15:26:11 +0000
committerMichael W. Hudson <mwh@python.net>2005-02-15 15:26:11 +0000
commitf457722538fb74453407e6ff6839f1afb455c2da (patch)
treed6cb94af2f230e18aa910fe334a5fed3f2aa31c4 /Lib
parentcaf61e690ec3938fce6bbcbbaee210bdaefc6050 (diff)
downloadcpython-f457722538fb74453407e6ff6839f1afb455c2da.tar.gz
Test that SystemExits are handled properly by the exit machinery. I
broke the "raise SystemExit(46)" case when doing new-style exceptions, but I'd much rather have found out here than in test_tempfile (growl).
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_sys.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py
index 48336b45a7..9aafbbc4ba 100644
--- a/Lib/test/test_sys.py
+++ b/Lib/test/test_sys.py
@@ -161,6 +161,18 @@ class SysModuleTest(unittest.TestCase):
else:
self.fail("no exception")
+ # test that the exit machinery handles SystemExits properly
+ import subprocess
+ # both unnormalized...
+ rc = subprocess.call([sys.executable, "-c",
+ "raise SystemExit, 46"])
+ self.assertEqual(rc, 46)
+ # ... and normalized
+ rc = subprocess.call([sys.executable, "-c",
+ "raise SystemExit(47)"])
+ self.assertEqual(rc, 47)
+
+
def test_getdefaultencoding(self):
if test.test_support.have_unicode:
self.assertRaises(TypeError, sys.getdefaultencoding, 42)