TEST(StringTest, Equal) { char ch[10] = "ganquanfu"; //EXPECT_EQ("ganquanfu" ,ch); //EXPECT_STREQ("ganquanfu" ,ch);//字符串比较 EXPECT_FLOAT_EQ(12.111, 12.1111); EXPECT_EQ(12.111, 12.111); }
在源码上,string对比宏和二进制对比只是在对比函数的选择上有差异,以Equal为例 [cpp]view plaincopy print? #define EXPECT_EQ(val1, val2) \ EXPECT_PRED_FORMAT2(::testing::internal:: \ EqHelper<GTEST_IS_NULL_LITERAL_(val1)>::Compare, \ val1, val2) [cpp]view plaincopy print? #define EXPEC...
EXPECT_EQ(std::string("a"), "a"); EXPECT_NE(std::string("a"), "b"); { const char* cstr_1 = "abc"; const char* cstr_2 = "abc"; // 虽然两者相等,但是只是指针地址相等 // a_cstr和b_cstr拥有相同的地址是因为编译器 // 将相同的字符串常量放到了同一个常量区。 EXPECT_EQ(cstr...
EXPECT_STRCASENE(str1,str2); the two C strings have different content, ignoring case string (ignoring) case not euqal 在源码上,string对比宏和二进制对比只是在对比函数的选择上有差异,以Equal为例 代码语言:javascript 复制 #define EXPECT_EQ(val1, val2) \ EXPECT_PRED_FORMAT2(::testing::intern...
gtest中断言的宏可以分为两类:一类是ASSERT宏,另一类就是EXPECT宏。 1、ASSERT_系列:如果当前点检测失败则退出当前函数 2、EXPECT_系列:如果当前点检测失败则继续往下执行 如果对自动输出的错误信息不满意的话,也是可以通过operator<<能够在失败的时候打印日志,将一些自定义的信息输出。
TEST(StringCmpTest, Demo) { char*pszCoderZh="CoderZh"; wchar_t*wszCoderZh=L"CoderZh"; std::stringstrCoderZh="CoderZh"; std::wstring wstrCoderZh=L"CoderZh"; EXPECT_STREQ("CoderZh", pszCoderZh); EXPECT_STREQ(L"CoderZh", wszCoderZh); ...
std::vector<std::string>::iterator it = vec.begin()+1; ASSERT_NE(it, vec.end()); } TEST_F(MyTestSuite, Size) { ASSERT_EQ(6, vec.size()); } TEST(MyGlobalTest, test0) { EXPECT_EQ(6, 3); } TEST_F(MyTestCase, ZeroEqual) ...
今天在写单元测试时,当试图用断言复杂结构体的容器时,发现当测试失败时,gtest默认会输出两个容器的二进制。 譬如以下断言失败时, EXPECT_THAT(result,testing::UnorderedElementsAreArray(target)); 将会输出 result 和 target 对应的二进制 Expected: has 1 element and that element is equal to 16-byte object ...
void YHttpHeader::addHeader(std::string name, std::string value) { if (name.empty()) return; if (YStrHelper::isEqual(name, ContentLength)) { has_content_length_ = true; content_length_ = std::stol(value); } else if (YStrHelper::isEqual(name, TransferEncoding)) { is_chunked_ =...
EXPECT_EQ(0,0); } // Tests that Foo HiHiHi. TEST_F(FooTest, OneEqual) { EXPECT_EQ(1,1); } } // namespace 上面这段代码就是一个很简单的gtest调用代码。我们需要按照下面的方面来对这些代码进行编译。因为gtest库提供的是.la文件,所以我们需要使用libtool来进行编译。