0
我正在对DLL/SO进行Python包装。我已经验证了调用实际DLL和SO的代码。我想单元测试我的包装,而不需要底层DLL/SO被安装。我正在寻找使用mock。如何在Python中使用ctypes.byref作为参数之一来模拟ctypes函数
我遇到的问题是采用byref参数和返回值的函数。例如,如果C fundtion看起来是这样的:
int initialize(char *resource, ulong *new_handle)
{
// Some code here
*new_handle = temp_handle;
return error;
}
和Python代码看起来像:
error_code = library.initialize(resource.encode('ascii'), ctypes.byref(session_handle))
我能嘲笑的功能和设置的返回值(错误代码)但我一直无法弄清楚如何设置session_handle中返回的值。
这是可能的,如果是这样,如何?