diff options
author | Neeraj Kumar | 2010-08-09 20:10:53 +0000 |
---|---|---|
committer | Neeraj Kumar | 2010-08-09 20:10:53 +0000 |
commit | 4e92b3a17ea963d3c006c93abd28287e0fac153a (patch) | |
tree | fec5727424608cad49f581c134772b6ac106f722 /engines/testbed/testsuite.cpp | |
parent | 37d28b35b9b7ed2c71af7ea59b7bc4706412192c (diff) | |
download | scummvm-rg350-4e92b3a17ea963d3c006c93abd28287e0fac153a.tar.gz scummvm-rg350-4e92b3a17ea963d3c006c93abd28287e0fac153a.tar.bz2 scummvm-rg350-4e92b3a17ea963d3c006c93abd28287e0fac153a.zip |
TESTBED: Some refinemnts related to skipping tests and display in GUI
svn-id: r51945
Diffstat (limited to 'engines/testbed/testsuite.cpp')
-rw-r--r-- | engines/testbed/testsuite.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/engines/testbed/testsuite.cpp b/engines/testbed/testsuite.cpp index 76d9049a39..3f98938e75 100644 --- a/engines/testbed/testsuite.cpp +++ b/engines/testbed/testsuite.cpp @@ -121,6 +121,7 @@ void Testsuite::logDetailedPrintf(const char *fmt, ...) { Testsuite::Testsuite() { _numTestsPassed = 0; _numTestsExecuted = 0; + _numTestsSkipped = 0; // Initially all testsuites are enabled, disable them by calling enableTestSuite(name, false) _isTsEnabled = true; // Set custom color for progress bar @@ -148,6 +149,7 @@ void Testsuite::genReport() const { logPrintf("Subsystem: %s ", getName()); logPrintf("(Tests Executed: %d)\n", _numTestsExecuted); logPrintf("Passed: %d ", _numTestsPassed); + logPrintf("Skipped: %d ", _numTestsSkipped); logPrintf("Failed: %d\n", getNumTestsFailed()); logPrintf("\n"); } @@ -333,29 +335,33 @@ void Testsuite::execute() { for (Common::Array<Test *>::iterator i = _testsToExecute.begin(); i != _testsToExecute.end(); ++i) { if (!(*i)->enabled) { logPrintf("Info! Skipping Test: %s, Skipped by configuration.\n", ((*i)->featureName).c_str()); + _numTestsSkipped++; continue; } - if (toQuit == kSkipNext) { - logPrintf("Info! Skipping Test: %s, Skipped by user.\n", ((*i)->featureName).c_str()); - toQuit = kLoopNormal; - continue; - } - if((*i)->isInteractive && !isSessionInteractive) { logPrintf("Info! Skipping Test: %s, non-interactive environment is selected\n", ((*i)->featureName).c_str()); + _numTestsSkipped++; continue; } logPrintf("Info! Executing Test: %s\n", ((*i)->featureName).c_str()); updateStats("Test", ((*i)->featureName).c_str(), count++, numEnabledTests, pt); - _numTestsExecuted++; - if ((*i)->driver()) { + + // Run the test and capture exit status. + TestExitStatus eStatus = (*i)->driver(); + if (kTestPassed == eStatus) { logPrintf("Result: Passed\n"); + _numTestsExecuted++; _numTestsPassed++; + } else if (kTestSkipped == eStatus){ + logPrintf("Result: Skipped\n"); + _numTestsSkipped++; } else { + _numTestsExecuted++; logPrintf("Result: Failed\n"); } + updateStats("Test", ((*i)->featureName).c_str(), count, numEnabledTests, pt); // TODO: Display a screen here to user with details of upcoming test, he can skip it or Quit or RTL // Check if user wants to quit/RTL/Skip next test by parsing events. |