From e7becc5007b8600402697513bdc74579dbc630d2 Mon Sep 17 00:00:00 2001 From: Thomas Heller Date: Wed, 24 Oct 2007 19:50:45 +0000 Subject: Added unittest for calling a function with paramflags (backport from py3k branch). --- Lib/ctypes/test/test_prototypes.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Lib/ctypes/test/test_prototypes.py b/Lib/ctypes/test/test_prototypes.py index 9f02086..5a4117a 100644 --- a/Lib/ctypes/test/test_prototypes.py +++ b/Lib/ctypes/test/test_prototypes.py @@ -48,6 +48,24 @@ class CharPointersTestCase(unittest.TestCase): func.restype = c_long func.argtypes = None + def test_paramflags(self): + # function returns c_void_p result, + # and has a required parameter named 'input' + prototype = CFUNCTYPE(c_void_p, c_void_p) + func = prototype(("_testfunc_p_p", testdll), + ((1, "input"),)) + + try: + func() + except TypeError as details: + self.failUnlessEqual(str(details), "required argument 'input' missing") + else: + self.fail("TypeError not raised") + + self.failUnlessEqual(func(None), None) + self.failUnlessEqual(func(input=None), None) + + def test_int_pointer_arg(self): func = testdll._testfunc_p_p func.restype = c_long -- cgit v0.12