如何使用Googletest测试导致无限循环的函数

时间:2017-10-24 17:37:32

标签: c++ windows eclipse-cdt googletest

有没有办法使用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计算机。

0 个答案:

没有答案