Kaydet (Commit) aa3dc456 authored tarafından Finn Bock's avatar Finn Bock

Enable support for jython:

1. Acknowledge the welknown difference that jython
allows continue in the finally clause.

2. Avoid using _testcapi when running with jython.

This closes patch "[ #490417 ] Jython and test_exceptions"
üst 59d5a9b5
...@@ -4,7 +4,6 @@ from test_support import * ...@@ -4,7 +4,6 @@ from test_support import *
from types import ClassType from types import ClassType
import warnings import warnings
import sys, traceback import sys, traceback
import _testcapi
warnings.filterwarnings("error", "", OverflowWarning, __name__) warnings.filterwarnings("error", "", OverflowWarning, __name__)
...@@ -121,7 +120,11 @@ while 1: ...@@ -121,7 +120,11 @@ while 1:
finally: finally:
continue continue
''' '''
ckmsg(s, "'continue' not supported inside 'finally' clause") if sys.platform.startswith('java'):
print "'continue' not supported inside 'finally' clause"
print "ok"
else:
ckmsg(s, "'continue' not supported inside 'finally' clause")
s = '''\ s = '''\
try: try:
continue continue
...@@ -171,6 +174,7 @@ class BadException: ...@@ -171,6 +174,7 @@ class BadException:
raise RuntimeError, "can't instantiate BadException" raise RuntimeError, "can't instantiate BadException"
def test_capi1(): def test_capi1():
import _testcapi
try: try:
_testcapi.raise_exception(BadException, 1) _testcapi.raise_exception(BadException, 1)
except TypeError, err: except TypeError, err:
...@@ -180,9 +184,9 @@ def test_capi1(): ...@@ -180,9 +184,9 @@ def test_capi1():
assert co.co_filename.endswith('test_exceptions.py') assert co.co_filename.endswith('test_exceptions.py')
else: else:
print "Expected exception" print "Expected exception"
test_capi1()
def test_capi2(): def test_capi2():
import _testcapi
try: try:
_testcapi.raise_exception(BadException, 0) _testcapi.raise_exception(BadException, 0)
except RuntimeError, err: except RuntimeError, err:
...@@ -194,6 +198,9 @@ def test_capi2(): ...@@ -194,6 +198,9 @@ def test_capi2():
assert co2.co_name == "test_capi2" assert co2.co_name == "test_capi2"
else: else:
print "Expected exception" print "Expected exception"
test_capi2()
if not sys.platform.startswith('java'):
test_capi1()
test_capi2()
unlink(TESTFN) unlink(TESTFN)
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