谷歌模拟,如果匹配器完全覆盖前一个会发生什么?

时间:2015-02-25 05:35:57

标签: googlemock

我正在使用Google Mock并考虑这种语法:

  1. EXPECT_CALL(示例,示例(_,_,false))。WillOnce(action);
  2. EXPECT_CALL(示例,示例(_,_,_))。WillRepeatedly(action);
  3. 根据该文档,谷歌模拟将搜索相反较旧的匹配器。那么第一个语句会抛出异常吗?在文档中,它说第一个将被遮蔽。这是否意味着GoogleMock不会为第一个生成任何内容?

1 个答案:

答案 0 :(得分:0)

在您的示例中,期望(1)永远不会得到满足,测试将失败。由于googlemock以相反的顺序搜索期望值,因此对Example.example()的所有调用都将匹配(2),并且永远不会满足(1)。