有没有办法使用googletest来测试会导致无限循环的函数?我有以下代码,其中定义了断言功能:
#ifndef NDEBUG
#define ukd_assert(expr) \
((void)((expr) ? 0 : (Assert::failedAssert(), 0)))
#else // NDEBUG
#define INSTANTIATE_ASSERT(fp)
#define ukd_assert(expr) ((void)0)
#endif
volatile bool loopFlag = true;
void failedAssert( void )
{
const char *str = "Assert failed\r\n";
// now hang
while(loopFlag)
{}
}
我需要googletest运行测试以检查assert定义是否调用了failedAssert函数。如果重要,我正在使用Windows 10计算机。