[pypy-svn] r52529 - in pypy/dist/pypy/lib: _ctypes app_test/ctypes
pedronis at codespeak.net
pedronis at codespeak.net
Fri Mar 14 19:17:51 CET 2008
Author: pedronis
Date: Fri Mar 14 19:17:50 2008
New Revision: 52529
Modified:
pypy/dist/pypy/lib/_ctypes/union.py
pypy/dist/pypy/lib/app_test/ctypes/test_functions.py
Log:
make the test pass
Modified: pypy/dist/pypy/lib/_ctypes/union.py
==============================================================================
--- pypy/dist/pypy/lib/_ctypes/union.py (original)
+++ pypy/dist/pypy/lib/_ctypes/union.py Fri Mar 14 19:17:50 2008
@@ -66,20 +66,20 @@
_set_shape(self)
_CDataMeta.__setattr__(self, name, value)
- #def _CData_output(self, resarray, base=None, index=-1):
- # res = self.__new__(self)
- # ffistruct = self._ffiopaque.fromaddress(resarray.buffer)
- # res.__dict__['_buffer'] = ffistruct
- # res.__dict__['_base'] = base
- # res.__dict__['_index'] = index
- # return res.__ctypes_from_outparam__()
+ def _CData_output(self, resarray, base=None, index=-1):
+ res = self.__new__(self)
+ ffiopaque = self._ffiopaque.fromaddress(resarray.buffer)
+ res.__dict__['_buffer'] = ffiopaque
+ res.__dict__['_base'] = base
+ res.__dict__['_index'] = index
+ return res.__ctypes_from_outparam__()
- #def _CData_retval(self, resbuffer):
- # res = self.__new__(self)
- # res.__dict__['_buffer'] = resbuffer
- # res.__dict__['_base'] = None
- # res.__dict__['_index'] = -1
- # return res.__ctypes_from_outparam__()
+ def _CData_retval(self, resbuffer):
+ res = self.__new__(self)
+ res.__dict__['_buffer'] = resbuffer
+ res.__dict__['_base'] = None
+ res.__dict__['_index'] = -1
+ return res.__ctypes_from_outparam__()
class Union(_CData):
Modified: pypy/dist/pypy/lib/app_test/ctypes/test_functions.py
==============================================================================
--- pypy/dist/pypy/lib/app_test/ctypes/test_functions.py (original)
+++ pypy/dist/pypy/lib/app_test/ctypes/test_functions.py Fri Mar 14 19:17:50 2008
@@ -404,7 +404,6 @@
raises(ArgumentError, lambda: callback((1, 2, 3, 4), POINT()))
def test_union_as_passed_value(self):
- py.test.skip("WIP")
class UN(Union):
_fields_ = [("x", c_short),
("y", c_long)]
More information about the Pypy-commit
mailing list