summaryrefslogtreecommitdiff
path: root/testing
diff options
context:
space:
mode:
authorArmin Rigo <arigo@tunes.org>2020-01-07 16:28:21 +0100
committerArmin Rigo <arigo@tunes.org>2020-01-07 16:28:21 +0100
commit8ad09120a1725de1103b45e8e7071d0917b32b88 (patch)
tree1da60db249e05ffba0abbdf586c121b797367e6a /testing
parent880785c863d1ed594e3fd1eef1df89f27c813a19 (diff)
downloadcffi-8ad09120a1725de1103b45e8e7071d0917b32b88.tar.gz
Python 3.9 compat
Diffstat (limited to 'testing')
-rw-r--r--testing/cffi0/backend_tests.py4
-rw-r--r--testing/cffi1/test_new_ffi_1.py4
-rw-r--r--testing/cffi1/test_recompiler.py19
-rw-r--r--testing/support.py8
4 files changed, 22 insertions, 13 deletions
diff --git a/testing/cffi0/backend_tests.py b/testing/cffi0/backend_tests.py
index 7b55ba8..063e9f2 100644
--- a/testing/cffi0/backend_tests.py
+++ b/testing/cffi0/backend_tests.py
@@ -1241,7 +1241,7 @@ class BackendTests:
py.test.skip(str(e))
f.write(ffi.buffer(a, 1000 * ffi.sizeof("int")))
f.seek(0)
- assert f.read() == array.array('i', range(1000)).tostring()
+ assert f.read() == arraytostring(array.array('i', range(1000)))
f.seek(0)
b = ffi.new("int[]", 1005)
f.readinto(ffi.buffer(b, 1000 * ffi.sizeof("int")))
@@ -1260,7 +1260,7 @@ class BackendTests:
py.test.skip(str(e))
f.write(ffi.buffer(a, 1000 * ffi.sizeof("int")))
f.seek(0)
- assert f.read() == array.array('i', range(1000)).tostring()
+ assert f.read() == arraytostring(array.array('i', range(1000)))
f.seek(0)
b = ffi.new("int[]", 1005)
f.readinto(ffi.buffer(b, 1000 * ffi.sizeof("int")))
diff --git a/testing/cffi1/test_new_ffi_1.py b/testing/cffi1/test_new_ffi_1.py
index d6eeecd..640830b 100644
--- a/testing/cffi1/test_new_ffi_1.py
+++ b/testing/cffi1/test_new_ffi_1.py
@@ -1220,7 +1220,7 @@ class TestNewFFI1:
py.test.skip(str(e))
f.write(ffi.buffer(a, 1000 * ffi.sizeof("int")))
f.seek(0)
- assert f.read() == array.array('i', range(1000)).tostring()
+ assert f.read() == arraytostring(array.array('i', range(1000)))
f.seek(0)
b = ffi.new("int[]", 1005)
f.readinto(ffi.buffer(b, 1000 * ffi.sizeof("int")))
@@ -1238,7 +1238,7 @@ class TestNewFFI1:
py.test.skip(str(e))
f.write(ffi.buffer(a, 1000 * ffi.sizeof("int")))
f.seek(0)
- assert f.read() == array.array('i', range(1000)).tostring()
+ assert f.read() == arraytostring(array.array('i', range(1000)))
f.seek(0)
b = ffi.new("int[]", 1005)
f.readinto(ffi.buffer(b, 1000 * ffi.sizeof("int")))
diff --git a/testing/cffi1/test_recompiler.py b/testing/cffi1/test_recompiler.py
index 3704d97..1b837f8 100644
--- a/testing/cffi1/test_recompiler.py
+++ b/testing/cffi1/test_recompiler.py
@@ -884,15 +884,20 @@ def test_unpack_args():
e5 = py.test.raises(TypeError, lib.foo2)
e6 = py.test.raises(TypeError, lib.foo2, 42)
e7 = py.test.raises(TypeError, lib.foo2, 45, 46, 47)
- assert str(e1.value) == "foo0() takes no arguments (1 given)"
- assert str(e2.value) == "foo0() takes no arguments (2 given)"
- assert str(e3.value) == "foo1() takes exactly one argument (0 given)"
- assert str(e4.value) == "foo1() takes exactly one argument (2 given)"
- assert str(e5.value) in ["foo2 expected 2 arguments, got 0",
+ def st1(s):
+ s = str(s)
+ if s.startswith("_CFFI_test_unpack_args.CompiledLib."):
+ s = s[len("_CFFI_test_unpack_args.CompiledLib."):]
+ return s
+ assert st1(e1.value) == "foo0() takes no arguments (1 given)"
+ assert st1(e2.value) == "foo0() takes no arguments (2 given)"
+ assert st1(e3.value) == "foo1() takes exactly one argument (0 given)"
+ assert st1(e4.value) == "foo1() takes exactly one argument (2 given)"
+ assert st1(e5.value) in ["foo2 expected 2 arguments, got 0",
"foo2() takes exactly 2 arguments (0 given)"]
- assert str(e6.value) in ["foo2 expected 2 arguments, got 1",
+ assert st1(e6.value) in ["foo2 expected 2 arguments, got 1",
"foo2() takes exactly 2 arguments (1 given)"]
- assert str(e7.value) in ["foo2 expected 2 arguments, got 3",
+ assert st1(e7.value) in ["foo2 expected 2 arguments, got 3",
"foo2() takes exactly 2 arguments (3 given)"]
def test_address_of_function():
diff --git a/testing/support.py b/testing/support.py
index d64ae3d..1c3585b 100644
--- a/testing/support.py
+++ b/testing/support.py
@@ -1,7 +1,7 @@
import sys, os
if sys.version_info < (3,):
- __all__ = ['u']
+ __all__ = ['u', 'arraytostring']
class U(object):
def __add__(self, other):
@@ -12,12 +12,16 @@ if sys.version_info < (3,):
assert u+'a\x00b' == eval(r"u'a\x00b'")
assert u+'a\u1234b' == eval(r"u'a\u1234b'")
assert u+'a\U00012345b' == eval(r"u'a\U00012345b'")
+ def arraytostring(a):
+ return a.tostring()
else:
- __all__ = ['u', 'unicode', 'long']
+ __all__ = ['u', 'unicode', 'long', 'arraytostring']
u = ""
unicode = str
long = int
+ def arraytostring(a):
+ return a.tobytes()
class StdErrCapture(object):