Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MacOS 段错误 #22

Open
Cirnoo opened this issue May 17, 2022 · 1 comment
Open

MacOS 段错误 #22

Cirnoo opened this issue May 17, 2022 · 1 comment

Comments

@Cirnoo
Copy link

Cirnoo commented May 17, 2022

有没有更详细的文档,include哪些文件,怎么编译单元测试,怎么使用?源码工程中单元测试cmake编译不过,我自己编译了个静态库移植到自己的工程中

#include "emock/emock.hpp"

// 待测成员函数
class Foo
{
public:
    void bar1(int) {
        printf("aaaa\n");
    }
//    virtual void bar2(double);
//    static int bar3();
};

////////////////////////////////////

// 指定调用的mock函数
void EMOCK_API mock_bar1(Foo* obj, int) {
    // ...
}
void EMOCK_API mock_bar2(Foo* obj, double) {
    // ...
}

int main(int argc, char **argv) {
    EMOCK(&Foo::bar1)
            .stubs()
            .will(invoke(mock_bar1)); // 指定调用自定义的函数而不是指定返回值
}
_platform_memmove$VARIANT$Haswell 0x00007fff691539c2
[Inlined] emock::JmpOnlyApiHookImpl::saveOriginalData() JmpOnlyApiHook.cpp:56
[Inlined] emock::JmpOnlyApiHookImpl::startHook() JmpOnlyApiHook.cpp:62
[Inlined] emock::JmpOnlyApiHookImpl::JmpOnlyApiHookImpl(const void *, const void *) JmpOnlyApiHook.cpp:43
[Inlined] emock::JmpOnlyApiHookImpl::JmpOnlyApiHookImpl(const void *, const void *) JmpOnlyApiHook.cpp:42
emock::JmpOnlyApiHook::JmpOnlyApiHook(const void *, const void *) JmpOnlyApiHook.cpp:89
[Inlined] emock::ApiHookImpl::ApiHookImpl(const void *, const void *) ApiHook.cpp:36
[Inlined] emock::ApiHookImpl::ApiHookImpl(const void *, const void *) ApiHook.cpp:37
[Inlined] emock::ApiHook::ApiHook(const void *, const void *) ApiHook.cpp:48
emock::ApiHook::ApiHook(const void *, const void *) ApiHook.cpp:49
[Inlined] emock::ApiHookKey::ApiHookKey(const void *, emock::ApiHookHolder *, bool) ApiHookKey.cpp:36
emock::ApiHookKey::ApiHookKey(const void *, emock::ApiHookHolder *, bool) ApiHookKey.cpp:35
emock::HookMockObjectImpl::addMethod(const std::string &, const void *, emock::ApiHookHolder *, emock::InvocationMockerNamespace *, bool) HookMockObject.cpp:88
emock::HookMockObjectImpl::getMethod(const std::string &, const void *, emock::ApiHookHolder *, emock::InvocationMockerNamespace *, bool) HookMockObject.cpp:110
emock::HookMockObject::method(const std::string &, const void *, emock::ApiHookHolder *, bool) HookMockObject.cpp:139
emock::mockAPI<…>(const std::string &, void (Foo::*)(int)) ApiHookMocker.h:137
main main.cpp:36
start 0x00007fff68f5dcc9
@Cirnoo Cirnoo changed the title 没有找到EMOCK宏定义 MacOS 段错误 May 17, 2022
@orca-zhang
Copy link
Member

收到反馈

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants