aboutsummaryrefslogtreecommitdiff
path: root/engines/testbed/testbed.cpp
diff options
context:
space:
mode:
authorNeeraj Kumar2010-08-09 20:10:53 +0000
committerNeeraj Kumar2010-08-09 20:10:53 +0000
commit4e92b3a17ea963d3c006c93abd28287e0fac153a (patch)
treefec5727424608cad49f581c134772b6ac106f722 /engines/testbed/testbed.cpp
parent37d28b35b9b7ed2c71af7ea59b7bc4706412192c (diff)
downloadscummvm-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/testbed.cpp')
-rw-r--r--engines/testbed/testbed.cpp28
1 files changed, 19 insertions, 9 deletions
diff --git a/engines/testbed/testbed.cpp b/engines/testbed/testbed.cpp
index ef61cd7c13..760213af4f 100644
--- a/engines/testbed/testbed.cpp
+++ b/engines/testbed/testbed.cpp
@@ -38,33 +38,43 @@
namespace Testbed {
+// Initialize static member for TestbedExitDialog
+bool TestbedExitDialog::_rerun = false;
+
void TestbedExitDialog::init() {
_xOffset = 25;
_yOffset = 0;
Common::String text = "Thank you for using ScummVM testbed! Here are yor summarized results:";
addText(450, 20, text, Graphics::kTextAlignCenter, _xOffset, 15);
Common::Array<Common::String> strArray;
+ GUI::ListWidget::ColorList colors;
for (Common::Array<Testsuite *>::const_iterator i = _testsuiteList.begin(); i != _testsuiteList.end(); ++i) {
- strArray.push_back(Common::String::printf("%s (%d/%d tests failed)", (*i)->getName(), (*i)->getNumTestsFailed(),
- (*i)->getNumTestsEnabled()));
+ strArray.push_back(Common::String::printf("%s :", (*i)->getDescription()));
+ colors.push_back(GUI::ThemeEngine::kFontColorNormal);
+ if ((*i)->isEnabled()) {
+ strArray.push_back(Common::String::printf("Passed: %d Failed: %d Skipped: %d", (*i)->getNumTestsPassed(), (*i)->getNumTestsFailed(), (*i)->getNumTestsSkipped()));
+ } else {
+ strArray.push_back("Skipped");
+ }
+ colors.push_back(GUI::ThemeEngine::kFontColorAlternate);
}
- addList(0, _yOffset, 500, 200, strArray);
+ addList(0, _yOffset, 500, 200, strArray, &colors);
text = "More Details can be viewed in the Log file : " + Testsuite::getLogFile();
addText(450, 20, text, Graphics::kTextAlignLeft, 0, 0);
text = "Directory : " + Testsuite::getLogDir();
addText(500, 20, text, Graphics::kTextAlignLeft, 0, 0);
_yOffset += 5;
- addButtonXY(_xOffset + 80, _yOffset, 120, 20, "Rerun Tests", kCmdRerunTestbed);
- addButtonXY(_xOffset + 240, _yOffset, 60, 20, "Close", GUI::kCloseCmd);
+ addButtonXY(_xOffset + 80, _yOffset, 120, 24, "Rerun test suite", kCmdRerunTestbed);
+ addButtonXY(_xOffset + 240, _yOffset, 60, 24, "Close", GUI::kCloseCmd);
}
void TestbedExitDialog::handleCommand(GUI::CommandSender *sender, uint32 cmd, uint32 data) {
switch (cmd) {
case kCmdRerunTestbed :
_rerun = true;
- GUI::Dialog::close();
+ cmd = GUI::kCloseCmd;
default:
GUI::Dialog::handleCommand(sender, cmd, data);
}
@@ -144,8 +154,7 @@ Common::Error TestbedEngine::run() {
TestbedConfigManager cfMan(_testsuiteList, "testbed.config");
- // Keep running if rerun requested
- TestbedExitDialog tbDialog(_testsuiteList);
+ // Keep running if rerun requested
do {
Testsuite::clearEntireScreen();
@@ -158,10 +167,11 @@ Common::Error TestbedEngine::run() {
}
invokeTestsuites(cfMan);
+ TestbedExitDialog tbDialog(_testsuiteList);
tbDialog.init();
tbDialog.run();
- } while (tbDialog.rerunRequired());
+ } while (TestbedExitDialog::rerunRequired());
return Common::kNoError;
}