1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
#
# ----------------------------------------------
# WARNING, ALL LITERALS IN THIS FILE ARE UNICODE
# ----------------------------------------------
#
from __future__ import unicode_literals
#
#
#
from pypy.module._cffi_backend.newtype import _clean_cache
class AppTestUnicodeLiterals:
spaceconfig = dict(usemodules=('_cffi_backend', ))
def teardown_method(self, meth):
_clean_cache(self.space)
def test_cast(self):
from _cffi_backend import FFI
ffi = FFI()
assert int(ffi.cast("int", 3.14)) == 3 # unicode literal
def test_new(self):
from _cffi_backend import FFI
ffi = FFI()
assert ffi.new("int[]", [3, 4, 5])[2] == 5 # unicode literal
def test_typeof(self):
from _cffi_backend import FFI
ffi = FFI()
tp = ffi.typeof("int[51]") # unicode literal
assert tp.length == 51
def test_sizeof(self):
from _cffi_backend import FFI
ffi = FFI()
assert ffi.sizeof("int[51]") == 51 * 4 # unicode literal
def test_alignof(self):
from _cffi_backend import FFI
ffi = FFI()
assert ffi.alignof("int[51]") == 4 # unicode literal
def test_getctype(self):
from _cffi_backend import FFI
ffi = FFI()
assert ffi.getctype("int**") == "int * *" # unicode literal
assert type(ffi.getctype("int**")) is str
def test_callback(self):
from _cffi_backend import FFI
ffi = FFI()
cb = ffi.callback("int(int)", # unicode literal
lambda x: x + 42)
assert cb(5) == 47
|