changed a little NVIDIA Staging test framework to handle failed tests correctly

pull/13383/head
Alexey Spizhevoy 14 years ago
parent b541ce494d
commit 8cf6643903
  1. 5
      tests/gpu/src/nvidia/NCVAutoTestLister.hpp
  2. 32
      tests/gpu/src/nvidia/main_nvidia.cpp
  3. 15
      tests/gpu/src/nvidia_tests.cpp

@ -32,7 +32,7 @@ public:
this->tests.push_back(test);
}
void invoke()
bool invoke()
{
Ncv32u nPassed = 0;
Ncv32u nFailed = 0;
@ -106,6 +106,9 @@ public:
nPassed,
nFailedMem,
nFailed);
bool passed = nFailed == 0 && nFailedMem == 0;
return passed;
}
~NCVAutoTestLister()

@ -284,7 +284,7 @@ static void devNullOutput(const char *msg)
}
int main_nvidia()
bool main_nvidia()
{
printf("Testing NVIDIA Computer Vision SDK\n");
printf("==================================\n");
@ -330,17 +330,21 @@ int main_nvidia()
generateHaarLoaderTests(testListerHaarLoader);
generateHaarApplicationTests(testListerHaarAppl, testSrcFacesVGA_8u, 1280, 720);
testListerII.invoke();
testListerSII.invoke();
testListerRStdDev.invoke();
testListerResize.invoke();
testListerNPPSTVectorOperations.invoke();
testListerTranspose.invoke();
testListerVisualize.invoke();
testListerVectorOperations.invoke();
testListerHypFiltration.invoke();
testListerHaarLoader.invoke();
testListerHaarAppl.invoke();
return 0;
// Indicate if at least one test failed
bool passed = true;
// Invoke all tests
passed &= testListerII.invoke();
passed &= testListerSII.invoke();
passed &= testListerRStdDev.invoke();
passed &= testListerResize.invoke();
passed &= testListerNPPSTVectorOperations.invoke();
passed &= testListerTranspose.invoke();
passed &= testListerVisualize.invoke();
passed &= testListerVectorOperations.invoke();
passed &= testListerHypFiltration.invoke();
passed &= testListerHaarLoader.invoke();
passed &= testListerHaarAppl.invoke();
return passed;
}

@ -53,11 +53,18 @@ protected:
void run( int )
{
#if defined(HAVE_CUDA)
int main_nvidia();
main_nvidia();
ts->set_failed_test_info(CvTS::OK);
bool main_nvidia();
// Invoke all NVIDIA Staging tests and obtain the result
bool passed = main_nvidia();
if (passed)
ts->set_failed_test_info(CvTS::OK);
else
ts->set_failed_test_info(CvTS::FAIL_INVALID_OUTPUT);
#else
ts->set_failed_test_info(CvTS::SKIPPED);
#endif
}
} CV_NVidiaTestsCaller_test;
} CV_NVidiaTestsCaller_test;

Loading…
Cancel
Save