def test_unaryop(op, input): cinput = convert(input) wrapper = MetabiosisWrapper(cinput) result = op(wrapper) if isinstance(result, MetabiosisWrapper): result = pypy_convert(result) expected = op(input) assert result == expected
def test_binaryop(op, arg1, arg2): carg1 = convert(arg1) wrapper1 = MetabiosisWrapper(carg1) carg2 = convert(arg2) wrapper2 = MetabiosisWrapper(carg2) result = op(wrapper1, wrapper2) if isinstance(result, MetabiosisWrapper): result = pypy_convert(result) expected = op(arg1, arg2) assert result == expected
def test_no_convert(): operator = import_module("operator") functools = import_module("functools") builtin = import_module("__builtin__", noconvert=True) lst = builtin.list() part = functools.partial(operator.iadd, lst) part([1, 2, 3]) assert pypy_convert(lst._cpyobj) == [1, 2, 3]
def test_no_convert(): operator = import_module("operator") functools = import_module("functools") builtin = import_module("__builtin__", noconvert=True) lst = builtin.list() part = functools.partial(operator.iadd, lst) part([1, 2, 3]) assert pypy_convert(lst.obj) == [1, 2, 3]
def test_getitem_setitem_delitem(): builtin = import_module("__builtin__", noconvert=True) d = builtin.dict({1: 'foo', (1, 'a'): 'zoo'}) with pytest.raises(KeyError): d[2] assert pypy_convert(d[1]._cpyobj) == 'foo' assert pypy_convert(d[(1, 'a')]._cpyobj) == 'zoo' key, lst = (1, 2), ['a', 'b'] d[key] = lst assert pypy_convert(d[key]._cpyobj) == lst with pytest.raises(TypeError): d[[1, 2]] = 0 del d[1] with pytest.raises(KeyError): d[1] with pytest.raises(KeyError): del d[2]
def test_getitem_setitem_delitem(): builtin = import_module("__builtin__", noconvert=True) d = builtin.dict({1: 'foo', (1, 'a'): 'zoo'}) with pytest.raises(KeyError): d[2] assert pypy_convert(d[1].obj) == 'foo' assert pypy_convert(d[(1, 'a')].obj) == 'zoo' key, lst = (1, 2), ['a', 'b'] d[key] = lst assert pypy_convert(d[key].obj) == lst with pytest.raises(TypeError): d[[1, 2]] = 0 del d[1] with pytest.raises(KeyError): d[1] with pytest.raises(KeyError): del d[2]
def test_opaque_objects(): builtin = import_module("__builtin__") builtin_noconvert = import_module("__builtin__", noconvert=True) p1, p2 = Point(1.0, 2.0), Point(3.0, -1.0) d = DictSubclass() lst = builtin.list([p1, p2, d]) assert lst == [p1, p2, d] lst_cpy = builtin_noconvert.list([p1, p2, d]) assert pypy_convert(lst_cpy[0]._cpyobj) == p1 assert pypy_convert(lst_cpy[1]._cpyobj) == p2 assert pypy_convert(lst_cpy[2]._cpyobj) == d lst_cpy.reverse() assert pypy_convert(lst_cpy[0]._cpyobj) == d assert pypy_convert(lst_cpy[1]._cpyobj) == p2 assert pypy_convert(lst_cpy[2]._cpyobj) == p1
def test_opaque_objects(): builtin = import_module("__builtin__") builtin_noconvert = import_module("__builtin__", noconvert=True) p1, p2 = Point(1.0, 2.0), Point(3.0, -1.0) d = DictSubclass() lst = builtin.list([p1, p2, d]) assert lst == [p1, p2, d] lst_cpy = builtin_noconvert.list([p1, p2, d]) assert pypy_convert(lst_cpy[0].obj) == p1 assert pypy_convert(lst_cpy[1].obj) == p2 assert pypy_convert(lst_cpy[2].obj) == d lst_cpy.reverse() assert pypy_convert(lst_cpy[0].obj) == d assert pypy_convert(lst_cpy[1].obj) == p2 assert pypy_convert(lst_cpy[2].obj) == p1
def _pypy_convert_list(lst): return [pypy_convert(x._cpyobj) for x in lst]
def test_invert(): builtin = import_module("__builtin__", noconvert=True) n = builtin.int(10) assert isinstance(n, MetabiosisWrapper) assert pypy_convert((~n)._cpyobj) == ~10
def _pypy_convert_list(lst): return [pypy_convert(x.obj) for x in lst]
def test_invert(): builtin = import_module("__builtin__", noconvert=True) n = builtin.int(10) assert isinstance(n, MetabiosisWrapper) assert pypy_convert((~n).obj) == ~10