我在编译(和使用) 库时遇到了一些问题。它使用gcc和编译得很好,但我还无法用Rad C++ Builder XE3编译它。
当我试图编译时,我会得到以下错误:
Microsoft (R) Build Engine Version 3.5.30729.5420
[Microsoft .NET Framework, Version 2.0.50727.5472]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
Build started 02/02/2014 11:30:03.
Project "C:\Use
我花了几个小时试图找出为什么会出现以下编译错误:
~/src/example/build $ make
-- Downloading GMock / GTest version 1.8.0 from git
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/src/example/build
[ 5%] Performing update step for 'gmock'
[ 10%] Performing configure step for
我有两个模拟方法
struct temp_struct
{
int x;
};
using range = std::vector<std::vector<temp_struct>>;
Class MockA: public A
{
public:
MOCK_METHOD1(write_data, int(int a, int b));
MOCK_METHOD1(write_data, int(int a, const range &ranges));
}
我想做expect调用write_data,并将range作为参数。我希望匹配类型以避免多
我正在做一些测试,这样我就可以重构一个旧的C++项目。我正在尝试使用gmock匹配器ElementsAreArray()匹配两个数组。
EXPECT_THAT(value_instance.value, ::testing::ElementsAreArray(var_array));
其中value_instance.value是指向C数组的指针。
但是,当我在测试中使用这行代码进行编译时,从gmock-matchers.h文件中得到以下错误输出:
Error 1 error C2510: 'type' : left of '::' must be a
我正在尝试使用带有自定义字符串类型的gmock。
我有一个带有QString参数的方法,我想模拟这个方法:
MOCK_METHOD1(getValue, int(QString key));
我设定了一个期望:
EXPECT_CALL(mock, getValue("someKey"));
出了一个错误:
error: no matching function for call to 'MyMock::gmock_getValue(const char[8])'
include/gmock/gmock.h:9339:20: note: in definitio
当我在Mac上编译我的测试时,我得到这个错误。你能帮我找个合适的解决方案吗
下面是我安装googletest的方法:
cd ~/
git clone https://github.com/google/googletest.git
cd googletest
mkdir install
cd install
cmake ../ #creates a make file
make #compiles Google Test
sudo make install #installs Google Test
echo "export CPLUS_INCLUDE_PATH=/usr
我已经成功地在linux中安装了yaml-cpp,然后我想用yaml-cpp在windows中安装yaml-cpp。但是当我构建或安装它时,会发生一些错误。例如:
In file included from D:/github/yaml-cpp/test/gtest-1.8.0/googletest/include/gtest/internal/gtest-linked_ptr.h:74:0,
from D:/github/yaml-cpp/test/gtest-1.8.0/googlemock/include/gmock/internal/gmock-po
我有一个成员函数,它引用数组输出参数,我想在google模拟中使用它,但它不起作用。
全班:
class Class
{
// returns: number of the rewritten elements in the array
int foo(Struct (&bar)[ArraySize]) const;
};
模拟课程:
class MockClass : public Class
{
MOCK_CONST_METHOD1(foo, int(Struct (&)[ArraySize]));
};
当我想使用它时,我会写以下内容:
ON_CALL(mMo
我正尝试在单元测试中使用GMock。但是链接失败,并出现下一个错误:
In function `testing::internal::linked_ptr_internal::depart()':
/home/user/googletest/googletest/include/gtest/internal/gtest-linked_ptr.h:127: undefined reference to `testing::internal::g_linked_ptr_mutex'
In function `testing::internal::linked_ptr_interna
使用c++17和gmock,我模拟一个类,并希望将调用重定向到其成员函数之一到lambda。这个是可能的吗?
他是个很小的例子:
#include <gmock/gmock.h>
using ::testing::_;
using ::testing::Invoke;
using ::testing::Return;
class Foo
{
public:
virtual uint8_t MyCall(const uint8_t in) const
{
return in;
}
};
class MockFoo : public Foo
上下文:,我试图用GMock伪装一个OpenCV++类。
问题:
对于接受cv::Mat并返回cv::Mat的函数,我无法使用EXPECT_CALL方法。编译器说gmock不能作为回报从cv::MatExpr转换为bool。
以下是编译期间的详细错误消息。
In file included from /home/arun/Documents /LaneDetection/test/../vendor/googletest/googlemock/include/gmock/gmock-spec-builders.h:75:0,
from /home/arun/
我正在尝试编写单元测试usig、google test和google mock,但我在这方面没有什么困难。我得到了错误(你可以在下面看到),我无法修复。
DummyUT.o: In function `~MockApplicationClass':
srctest/../mocks/AppMock.h:15: undefined reference to `Application::~Application()'
srctest/../mocks/AppMock.h:15: undefined reference to `Application::~Application()&
在cygwin上,EXPECT_CALL给出了分割错误。回溯痕迹显示:
Program received signal SIGSEGV, Segmentation fault.
0x004538e2 in join (ptr=0x61230494 <vtable for pthread_key+12>,
this=0x8003aedc) at ./gtest/include/gtest/internal/gtest-linked_ptr.h:113
113 while (p->next_ != ptr) p = p->next_;
(gdb) b
我有测试代码,它可以做一些事情,比如
EXPECT_CALL(mock, getSomeString()).WillOnce(Return(&testString));
其中getSomeString()是通过引用返回的:
std:string& getSomeString();
并获取
../../../../src/test/unit/gmock/gmock-actions.h: In member function ‘testing::internal::ReturnAction<R>::operator testing::Action<Func>