草庐IT

gmock-matchers

全部标签

java - Matcher.lookingAt() 和 find() 有什么区别?

我正在看Java正则表达式教程,标题本身就很清楚了。看起来Matcher.lookingAt()正在尝试匹配整个字符串。是真的吗? 最佳答案 documentationforMatcher.lookingAt清楚地解释了lookingAt尝试匹配的区域:Likethematchesmethod,thismethodalwaysstartsatthebeginningoftheregion;unlikethatmethod,itdoesnotrequirethattheentireregionbematched.所以不,looking

Java RegEx Matcher.groupCount 返回 0

我知道有人问过这个问题,但我无法解决对于有正文的书对象(西类牙语):"quieromasdinero"(实际上要长很多)我的Matcher不断返回0:Strings="mas";//thisisfortesting,comesfromaListinthit=0;Patternp=Pattern.compile(s,Pattern.CASE_INSENSITIVE);Matcherm=p.matcher(mybooks.get(i).getBody());m.find();System.out.println(s+""+m.groupCount()+""+mybooks.get(i).g

java - Mockito Matchers.any(...) 仅在一个参数上

我想这样做:verify(function,Mockito.times(1)).doSomething(argument1,Matchers.any(Argument2.class));其中argument1是类型Argument1的特定实例,argument2是类型Argument2的任何实例。但是我得到一个错误:org.mockito.exceptions.misusing.InvalidUseOfMatchersException:Invaliduseofargumentmatchers!2matchersexpected,1recorded.Thisexceptionmayoc

c++ - QTestLib单元测试框架+Gmock(创建QTCPServer-Mock对象)

我正在使用Qt的QTestLib单元测试框架+GMOck。我正在尝试使用gMock设置模拟服务器,以便在单元测试中简单地从QTcpSocket接收数据到VerifySendData()方法。如果有人给我一个例子,我可以如何创建模拟对象gMOCK(EXPECTCALL,创建模拟对象)#ifndefTST_TCPCOMMTEST_H#defineTST_TCPCOMMTEST_H#include#include#include#includeclassTcpCommTest:publicQObject{Q_OBJECTprivate:QTcpSocket*pTestSocket;QTcpS

c++ - gmock 和转发声明的类

假设我有这个类并且在Base.h中向前声明了类型管理器。#includeclassMockBase:publicBase{public:MOCK_CONST_METHOD0(manager,constManager&());...};我不会在我的测试中使用这个方法,所以我不想将Manager类的定义包含到带有测试的文件中。但我认为在编译gmock时会尝试准备错误消息并且在其内部深处它需要Manager变量的地址并且我有一个错误:errorC2027:useofundefinedtype'Manager'\external\googlemock\gtest\include\gtest\g

c++ - CMake 与 gmock

我只是想确保我对CMakeLists.txt的理解是正确的。我的虚拟项目结构:|-+dummy|-+CMakeLists.txt|-+src|--CMakeLists.txt|--Converter.cpp|--Converter.hpp|--main.cpp|-+tests|--CMakeLists.txt|--Converter_ut.cpp|-+thirdparty|-+gmock-1.7.0我的目标是使用CMake创建构建过程。这是我的第一次尝试,所以我认为有一些错误。它有效,但我不确定我是否理解正确,如果你能分享一些意见/建议,我将不胜感激。虚拟/CMakeLists.txt

c++ - 如何使用 gmock 从类中模拟模板方法?

如何使用gmock模拟一个类的模板方法(不是模板类)?像这样的类示例,我想模拟这个类和这个模板方法..classA{public:templateintgetType(intval);};我知道如何用非虚拟方法模拟一个类,或者模拟一个模板类,但我不知道如何用一个模板方法模拟一个非模板类.. 最佳答案 第一个更好的解决方案是使用此函数A::getType的实现-也许它不必被模拟?例如:如果它只是返回一些在构造函数中设置的值-那么只需按照测试用例所需的方式构造A:classA{public:A(inta):a(a){}templatei

c++ - 为什么不为 GMock 1.8.0 编译带有可变参数的模拟函数

考虑这个片段MOCK_METHOD1(foo,int(volatileint*));这段代码在GMock1.7.0上编译得很好,但是当我更新到GMock1.8.0时它抛出了一个错误../gmock/fused-src/gtest/include/gtest/gtest-printers.h:467:6:error:reinterpret_castfromtype'volatileint*'totype'constvoid*'castsawayqualifiers*os(p);^很明显,它没有编译,因为根据定义,reinterpret_cast无法删除cv限定符。我还需要说明一下,我使用

c++ - 如何在 C++ 中使用 GMock 模拟方法(非虚拟)以返回特定值?

我的问题是我想模拟一个StaticNon-Virtual方法来返回true,最终返回false。我有静态方法例如:classSomeClass{public:staticboolSomeClass::DoAction(){//dosomeActions};};我想在模拟期间始终返回true,但默认情况下返回false,反正有模拟我尝试了以下方法来检查oncall值并发现它导致false。classMockSomeClass:publicSomeClass{public:MockSomeClass(){ON_CALL(this,DoAction).WillByDefault(testin

c++ - 在 gmock 的 EXPECT_CALL 中调用 sleep()

我试图在调用FuncHelper之前在.WillOnce中做一些sleep。所以我需要类似于以下内容的内容:EXPECT_CALL(*_mock,Func(_,_,_)).Times(1).WillOnce(DoAll(InvokeWithoutArgs(sleep(TimeToSleep)),Invoke(_mock,&M_MyMock::FuncHelper)));是否可以在.DoAll中使用arg调用sleep()?C++98是首选。更新:该解决方案基于@Smeeheey的回答并使用C++98。templatevoidSleep(){sleep(N);}...EXPECT_CAL