【问题标题】:Mock function with class template parameter in signature签名中带有类模板参数的模拟函数
【发布时间】:2013-08-13 06:26:26
【问题描述】:

gmock 是否可以模拟在其签名中包含类模板参数的函数?例如:

template <typename T>
struct Mockable
{
    virtual void do_work(const int num, const T& value) = 0;
};

template <typename T>
struct MockMockable : Mockable<T>
{
    MOCK_METHOD2(do_work, void(const int, const T&));
};

【问题讨论】:

    标签: c++ testing mocking gmock


    【解决方案1】:

    我找到了答案,您需要将模拟方法专门表示为带有_T的模板模拟方法

    template <typename T>
    struct MockMockable : Mockable<T>
    {
        MOCK_METHOD2_T(do_work, void(const int, const T&));
    };
    

    更多信息: https://github.com/google/googletest/blob/master/docs/gmock_cheat_sheet.md#mocking-a-class-template-mocktemplate

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-04
      • 2011-08-25
      • 1970-01-01
      • 1970-01-01
      • 2015-01-20
      • 1970-01-01
      • 1970-01-01
      • 2013-04-12
      相关资源
      最近更新 更多