OpenCV OpenCL Gtest 工程框架的问题。

来源:互联网 发布:什么是淘宝长尾词 编辑:程序博客网 时间:2024/05/22 12:26

问题

假设工程中有个类的名字或者函数的名字和TEST_P(oc_cvMoments,Mat)里面的第一个参数一样的话,就会出现以下问题。

 

Gtest框架的问题。

struct ocl_cvMoments : MomentsTestBase {};

TEST_P(ocl_cvMoments, Mat)

{

略。。。

}

 

INSTANTIATE_TEST_CASE_P(Moments, ocl_cvMoments, Combine(Values(CV_8UC1, CV_16UC1 ), Values(false)));

提示错误:

/media/test/test_moments.cpp:213:1: 错误: 模板实参表语法错误
/media/test_moments.cpp:213:1: 错误: 对‘testing::internal::ParameterizedTestCaseRegistry::GetTestCasePatternHolder(const char [14], const char [73], int)’的调用没有匹配的函数
/media/test/test_moments.cpp:213:1: 附注: 备选是:
/media/modules/ts/include/opencv2/ts/ts_gtest.h:10511:40: 附注: template<class TestCase> testing::internal::ParameterizedTestCaseInfo<TestCase>* testing::internal::ParameterizedTestCaseRegistry::GetTestCasePatternHolder(const char*, const char*, int)

 

解决的办法:

Gtest框架的问题。

struct ocl_cvMoments : MomentsTestBase {};

TEST_P(ocl_cvMoments, Mat)

{

略。。。

}

解决办法,修改该类的名字或者该工程中函数的名字和TEST_P(oc_cvMoments,Mat)里面的第一个参数不一样,就会出现以下问题。

 

 

原创粉丝点击