I am trying to mock std::make_shared
template <typename T, typename... Args>
class MakeSharedMock {
public:
MOCK_METHOD(std::shared_ptr<T>, MakeShared, (Args... args), (const noexcept));
};
However getting error like this
error: static assertion failed: This method does not take 1 arguments.
Parenthesize all types with unproctected commas.
MOCK_METHOD(std::shared_ptr, MakeShared, (Args… args), (const
noexcept));
If I omit first typename T, it compiles
template <typename... Args>
class MakeSharedMock {
public:
MOCK_METHOD(std::shared_ptr<int>, MakeShared, (Args... args), (const noexcept));
};