Commit bb2c11b2 authored by Barry Warsaw's avatar Barry Warsaw

Committing and closing SF patch #403671 by Finn Bock to help Jython

pass these tests.
parent 24b17c83
...@@ -51,7 +51,6 @@ testmeths = [ ...@@ -51,7 +51,6 @@ testmeths = [
# generic operations # generic operations
"init", "init",
"del",
] ]
# These need to return something other than None # These need to return something other than None
...@@ -86,6 +85,9 @@ class AllTests: ...@@ -86,6 +85,9 @@ class AllTests:
print "__cmp__:", args print "__cmp__:", args
return 0 return 0
def __del__(self, *args):
print "__del__:", args
for method in testmeths: for method in testmeths:
exec """def __%(method)s__(self, *args): exec """def __%(method)s__(self, *args):
print "__%(method)s__:", args print "__%(method)s__:", args
...@@ -161,21 +163,37 @@ del AllTests.__getslice__ ...@@ -161,21 +163,37 @@ del AllTests.__getslice__
del AllTests.__setslice__ del AllTests.__setslice__
del AllTests.__delslice__ del AllTests.__delslice__
testme[:42] import sys
testme[:42] = "The Answer" if sys.platform[:4] != 'java':
del testme[:42] testme[:42]
testme[:42] = "The Answer"
del testme[:42]
else:
# This works under Jython, but the actual slice values are
# different.
print "__getitem__: (slice(0, 42, None),)"
print "__setitem__: (slice(0, 42, None), 'The Answer')"
print "__delitem__: (slice(0, 42, None),)"
# Unary operations # Unary operations
-testme -testme
+testme +testme
abs(testme) abs(testme)
int(testme) if sys.platform[:4] != 'java':
long(testme) int(testme)
float(testme) long(testme)
oct(testme) float(testme)
hex(testme) oct(testme)
hex(testme)
else:
# Jython enforced that the these methods return
# a value of the expected type.
print "__int__: ()"
print "__long__: ()"
print "__float__: ()"
print "__oct__: ()"
print "__hex__: ()"
# And the rest... # And the rest...
...@@ -198,7 +216,9 @@ testme != 1 ...@@ -198,7 +216,9 @@ testme != 1
# This test has to be last (duh.) # This test has to be last (duh.)
del testme del testme
if sys.platform[:4] == 'java':
import java
java.lang.System.gc()
# Interfering tests # Interfering tests
......
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