如何使用 google-test 检查向量中的内容?
How do I check the contents in a vector using google-test?
std::vector<uint8_t> vector1(10);
std::vector<uint8_t> vector2(10);
std::fill(vector1.begin(), vector1.end(), 2);
std::fill(vector2.begin(), vector2.end(), 2);
EXPECT_EQ(vector1, vector2);
上面的EXPECT_EQ()是否检查了vector1和vector2中的内容是否相等?如果没有,我该如何检查
vector1 和 vector2 中的内容是否使用 googletest EXPECT_* 函数相等?
googletest 的文档说明了如何测试 C 字符串和 C++ 字符串对象的内容,但没有说明如何检查 C++ 向量的内容。
EXPECT_EQ
使用operator ==
比较对象,operator ==
for std::vector
(引用自cppreference):
Checks if the contents of lhs
and rhs
are equal, that is, they have the same number of elements and each element in lhs
compares equal with the element in rhs
at the same position.
所以答案是是,它会比较向量的内容。
std::vector<uint8_t> vector1(10);
std::vector<uint8_t> vector2(10);
std::fill(vector1.begin(), vector1.end(), 2);
std::fill(vector2.begin(), vector2.end(), 2);
EXPECT_EQ(vector1, vector2);
上面的EXPECT_EQ()是否检查了vector1和vector2中的内容是否相等?如果没有,我该如何检查 vector1 和 vector2 中的内容是否使用 googletest EXPECT_* 函数相等?
googletest 的文档说明了如何测试 C 字符串和 C++ 字符串对象的内容,但没有说明如何检查 C++ 向量的内容。
EXPECT_EQ
使用operator ==
比较对象,operator ==
for std::vector
(引用自cppreference):
Checks if the contents of
lhs
andrhs
are equal, that is, they have the same number of elements and each element inlhs
compares equal with the element inrhs
at the same position.
所以答案是是,它会比较向量的内容。