我在gmock學習。現在,我試着去嘲笑爲「任務」之類的,就像這樣:是什麼saveArg和saveArgPointee的gmock區別?
class MockTask : public Task
{
public:
MOCK_METHOD3(Execute, bool(std::set<std::string> &setDeviceIDs, int timeout, PACKET_DATA *Data));
};
我想保存結構PDATA當task.excute被調用,這樣我可以驗證pdata->成員。這是我的代碼:
PAKET_DATA data;
EXPECT_CALL(task, Execute(testing::_, testing::_, testing::_))
.WillOnce(testing::saveArg<2>(&data));
ASSERT_EQ(data->resultcode, 0);
這是正確的嗎? saveArg和saveArgPointee有什麼區別?
我已經嘗試了上面兩個測試。這兩個測試的結果是不同的。 – XHLin