summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArmin Rigo <arigo@tunes.org>2014-01-07 09:57:39 +0100
committerArmin Rigo <arigo@tunes.org>2014-01-07 09:57:39 +0100
commitef976b84275b18e5ad6242ba21f13337831f5996 (patch)
treed68f5428211aac052b248937a325d26141d09079
parentf397f0e23ef5d1aca6be2becffe9b455696f96b6 (diff)
parent539e280e40104095e4ebe501e1009cc3b196dce7 (diff)
downloadcffi-ef976b84275b18e5ad6242ba21f13337831f5996.tar.gz
merge heads
-rw-r--r--testing/test_verify.py8
-rw-r--r--testing/test_zdistutils.py33
2 files changed, 26 insertions, 15 deletions
diff --git a/testing/test_verify.py b/testing/test_verify.py
index 7027452..1ddbfa5 100644
--- a/testing/test_verify.py
+++ b/testing/test_verify.py
@@ -63,13 +63,13 @@ def test_missing_function_import_error():
def test_simple_case():
ffi = FFI()
ffi.cdef("double sin(double x);")
- lib = ffi.verify('#include <math.h>')
+ lib = ffi.verify('#include <math.h>', libraries=["m"])
assert lib.sin(1.23) == math.sin(1.23)
def test_rounding_1():
ffi = FFI()
ffi.cdef("float sin(double x);")
- lib = ffi.verify('#include <math.h>')
+ lib = ffi.verify('#include <math.h>', libraries=["m"])
res = lib.sin(1.23)
assert res != math.sin(1.23) # not exact, because of double->float
assert abs(res - math.sin(1.23)) < 1E-5
@@ -77,7 +77,7 @@ def test_rounding_1():
def test_rounding_2():
ffi = FFI()
ffi.cdef("double sin(float x);")
- lib = ffi.verify('#include <math.h>')
+ lib = ffi.verify('#include <math.h>', libraries=["m"])
res = lib.sin(1.23)
assert res != math.sin(1.23) # not exact, because of double->float
assert abs(res - math.sin(1.23)) < 1E-5
@@ -103,7 +103,7 @@ def test_strlen_array_of_char():
def test_longdouble():
ffi = FFI()
ffi.cdef("long double sinl(long double x);")
- lib = ffi.verify('#include <math.h>')
+ lib = ffi.verify('#include <math.h>', libraries=["m"])
for input in [1.23,
ffi.cast("double", 1.23),
ffi.cast("long double", 1.23)]:
diff --git a/testing/test_zdistutils.py b/testing/test_zdistutils.py
index 692eebd..2137a89 100644
--- a/testing/test_zdistutils.py
+++ b/testing/test_zdistutils.py
@@ -25,7 +25,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there %s!*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
v.write_source()
with open(v.sourcefilename, 'r') as f:
data = f.read()
@@ -35,7 +36,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there %s!*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
v.sourcefilename = filename = str(udir.join('write_source.c'))
v.write_source()
assert filename == v.sourcefilename
@@ -47,7 +49,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there %s!*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
try:
from StringIO import StringIO
except ImportError:
@@ -60,7 +63,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there %s!*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
v.compile_module()
assert v.get_module_name().startswith('_cffi_')
if v.generates_python_module():
@@ -71,7 +75,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there %s!2*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
basename = self.__class__.__name__ + 'test_compile_module'
v.modulefilename = filename = str(udir.join(basename + '.so'))
v.compile_module()
@@ -87,7 +92,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("%s sin(double x);" % csrc)
v = Verifier(ffi, "#include <math.h>",
- force_generic_engine=self.generic)
+ force_generic_engine=self.generic,
+ libraries=["m"])
names.append(v.get_module_name())
assert names[0] == names[1] != names[2]
@@ -104,7 +110,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there %s!3*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
library = v.load_library()
assert library.sin(12.3) == math.sin(12.3)
@@ -114,7 +121,8 @@ class DistUtilsTest(object):
csrc = '/*hi there %s!4*/#include "test_verifier_args.h"\n' % self
udir.join('test_verifier_args.h').write('#include <math.h>\n')
v = Verifier(ffi, csrc, include_dirs=[str(udir)],
- force_generic_engine=self.generic)
+ force_generic_engine=self.generic,
+ libraries=["m"])
library = v.load_library()
assert library.sin(12.3) == math.sin(12.3)
@@ -122,7 +130,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = "/*6%s*/\n#include <math.h>" % self
- lib = ffi.verify(csrc, force_generic_engine=self.generic)
+ lib = ffi.verify(csrc, force_generic_engine=self.generic,
+ libraries=["m"])
assert lib.sin(12.3) == math.sin(12.3)
assert isinstance(ffi.verifier, Verifier)
with open(ffi.verifier.sourcefilename, 'r') as f:
@@ -139,7 +148,8 @@ class DistUtilsTest(object):
#endif
'''
lib = ffi.verify(csrc, define_macros=[('TEST_EXTENSION_OBJECT', '1')],
- force_generic_engine=self.generic)
+ force_generic_engine=self.generic,
+ libraries=["m"])
assert lib.sin(12.3) == math.sin(12.3)
v = ffi.verifier
ext = v.get_extension()
@@ -152,7 +162,8 @@ class DistUtilsTest(object):
ffi = FFI()
ffi.cdef("double sin(double x);")
csrc = '/*hi there9!%s*/\n#include <math.h>\n' % self
- v = Verifier(ffi, csrc, force_generic_engine=self.generic)
+ v = Verifier(ffi, csrc, force_generic_engine=self.generic,
+ libraries=["m"])
assert not os.path.exists(v.sourcefilename)
v.get_extension()
assert os.path.exists(v.sourcefilename)