在Elixir中,如何模拟在使用过的'中定义的函数。模块?

时间:2015-03-05 15:02:15

标签: elixir meck

我正在使用meck,在大多数情况下效果很好。但是,我遇到以下错误: elixir (ErlangError) erlang error: {:undefined_function, {OAuth2.Strategy.AuthCode, :new, 2}}

我发现:newOAuth2.Strategy的{​​{1}}宏中定义的函数。这意味着__using__未定义:new。在这种情况下,如何模拟OAuth2.Strategy.AuthCode

1 个答案:

答案 0 :(得分:2)

Meck在运行时创建模拟,因此永远无法在Elixir中模拟宏。如果你的宏最终创建了一个函数,然后编译成一个模块,你应该可以模拟它(前提是你知道函数的名称)。