[pypy-svn] r49508 - in pypy/dist/pypy: rpython/test translator/cli/test translator/jvm/test
antocuni at codespeak.net
antocuni at codespeak.net
Fri Dec 7 13:58:41 CET 2007
Author: antocuni
Date: Fri Dec 7 13:58:40 2007
New Revision: 49508
Modified:
pypy/dist/pypy/rpython/test/tool.py
pypy/dist/pypy/translator/cli/test/test_builtin.py
pypy/dist/pypy/translator/jvm/test/runtest.py
Log:
- a much better way to test for float equality
- skip os.dup test in cli
Modified: pypy/dist/pypy/rpython/test/tool.py
==============================================================================
--- pypy/dist/pypy/rpython/test/tool.py (original)
+++ pypy/dist/pypy/rpython/test/tool.py Fri Dec 7 13:58:40 2007
@@ -3,10 +3,10 @@
from pypy.rpython.lltypesystem import lltype
from pypy.rpython.test.test_llinterp import gengraph, interpret, interpret_raises
-FLOAT_PRECISION = 8
-
class BaseRtypingTest(object):
+ FLOAT_PRECISION = 8
+
def gengraph(self, func, argtypes=[], viewbefore='auto', policy=None,
backendopt=False, config=None):
return gengraph(func, argtypes, viewbefore, policy, type_system=self.type_system,
@@ -23,7 +23,8 @@
def float_eq_approx(self, x, y):
diff = abs(x-y)
- return diff < 10**-FLOAT_PRECISION
+ error = diff/y
+ return error < 10**-self.FLOAT_PRECISION
def is_of_type(self, x, type_):
return type(x) is type_
Modified: pypy/dist/pypy/translator/cli/test/test_builtin.py
==============================================================================
--- pypy/dist/pypy/translator/cli/test/test_builtin.py (original)
+++ pypy/dist/pypy/translator/cli/test/test_builtin.py Fri Dec 7 13:58:40 2007
@@ -14,7 +14,9 @@
class TestCliBuiltin(CliTest, BaseTestBuiltin):
test_os_path_exists = skip_os
test_os_isdir = skip_os
+ test_os_dup_oo = skip_os
+
def test_builtin_math_frexp(self):
self._skip_powerpc("Mono math floating point problem")
BaseTestBuiltin.test_builtin_math_frexp(self)
Modified: pypy/dist/pypy/translator/jvm/test/runtest.py
==============================================================================
--- pypy/dist/pypy/translator/jvm/test/runtest.py (original)
+++ pypy/dist/pypy/translator/jvm/test/runtest.py Fri Dec 7 13:58:40 2007
@@ -14,8 +14,6 @@
generate_source_for_function, JvmError, detect_missing_support_programs
from pypy.translator.jvm.option import getoption
-FLOAT_PRECISION = 5
-
class StructTuple(tuple):
def __getattr__(self, name):
if name.startswith('item'):
@@ -81,6 +79,9 @@
return res
class JvmTest(BaseRtypingTest, OORtypeMixin):
+
+ FLOAT_PRECISION = 7
+
def __init__(self):
self._func = None
self._ann = None
@@ -132,7 +133,7 @@
assert False, 'function did not raise any exception at all'
def float_eq(self, x, y):
- return round(x, FLOAT_PRECISION) == round(y, FLOAT_PRECISION)
+ return self.float_eq_approx(x, y)
def is_of_type(self, x, type_):
return True # we can't really test the type
More information about the Pypy-commit
mailing list