ASSERT_STREQ失败时仅显示差异

时间:2018-06-08 14:01:44

标签: c++ googletest

当googletest的ASSERT_STREQ失败时,它会输出输入字符串及其差异。我可以让它只打印差异吗?

1 个答案:

答案 0 :(得分:2)

仅使用GTest功能?据我所知。

但没有什么可以阻止你编写自己的比较函数,即

bool stringsMatch(std::string oneString, std::string otherString)
{
    //...
};

std::string getDifferencesBetween(std::string oneString, std::string otherString)
{
    //...
};

然后写

//...
if (!stringsMatch(actualString, expectedString))
{
    FAIL() << getDifferencesBetween(actualString, expectedString);
}
//...