Use gtest assertions in cascade test

This simplifies test debugging a lot
This commit is contained in:
Andrey Kamaev 2013-02-06 15:07:31 +04:00
parent bf575ba7fb
commit 37d695a62e

View File

@ -363,22 +363,20 @@ int CV_DetectorTest::validate( int detectorIdx, vector<vector<Rect> >& objects )
}
noPair += (int)count_if( map.begin(), map.end(), isZero );
totalNoPair += noPair;
if( noPair > cvRound(valRects.size()*eps.noPair)+1 )
EXPECT_LE(noPair, cvRound(valRects.size()*eps.noPair)+1)
<< "detector " << detectorNames[detectorIdx] << " has overrated count of rectangles without pair on "
<< imageFilenames[imageIdx] << " image";
if (::testing::Test::HasFailure())
break;
}
if( imageIdx < (int)imageFilenames.size() )
{
char msg[500];
sprintf( msg, "detector %s has overrated count of rectangles without pair on %s-image\n",
detectorNames[detectorIdx].c_str(), imageFilenames[imageIdx].c_str() );
ts->printf( cvtest::TS::LOG, msg );
EXPECT_LE(totalNoPair, cvRound(totalValRectCount*eps./*total*/noPair)+1)
<< "detector " << detectorNames[detectorIdx] << " has overrated count of rectangles without pair on all images set";
if (::testing::Test::HasFailure())
return cvtest::TS::FAIL_BAD_ACCURACY;
}
if ( totalNoPair > cvRound(totalValRectCount*eps./*total*/noPair)+1 )
{
ts->printf( cvtest::TS::LOG, "overrated count of rectangles without pair on all images set" );
return cvtest::TS::FAIL_BAD_ACCURACY;
}
return cvtest::TS::OK;
}