谷歌模拟-如何说“必须以某个参数一次调用函数,但可以使用不同的参数多次调用"? [英] google mock - how to say "function must be called ONCE with a certain parameter but ok to be called many times with different parameters"?

查看:68
本文介绍了谷歌模拟-如何说“必须以某个参数一次调用函数,但可以使用不同的参数多次调用"?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要检测给定的函数是否已通过一组特定参数完全调用了ONCE.

I need to detect that a given function has been called exactly ONCE with a certain set of arguments.

EXPECT_CALL(Mock_Obj, func("abc")).Times(1)

但是可以多次使用不同的参数调用该函数.

but it's ok for that function to be called with different arguments any number of times.

我该如何表达?

推荐答案

在Google Mock中,以后的期望会覆盖以前的期望(

In Google Mock, later expectations override earlier ones (more details in the docs), so you can write this:

EXPECT_CALL(Mock_Obj, func(_)).Times(AnyNumber());
EXPECT_CALL(Mock_Obj, func("abc")).Times(1);

这篇关于谷歌模拟-如何说“必须以某个参数一次调用函数,但可以使用不同的参数多次调用"?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆