Test library for MTS Socket Modem Arduino Shield devices for Multi-Tech Systems
Dependents: mtsas mtsas mtsas mtsas ... more
Diff: TestRunner.cpp
- Revision:
- 1:42d2b6980cdd
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/TestRunner.cpp Mon May 19 11:02:48 2014 -0500 @@ -0,0 +1,58 @@ +#include "TestRunner.h" + +#include "mbed.h" +#include "Test.h" + +using namespace mts; + +std::vector<TestCollection*> TestRunner::collections; + +int TestRunner::totalCollections = 0; +int TestRunner::collectionsFailed = 0; +int TestRunner::totalTests = 0; +int TestRunner::totalFailed = 0; + +void TestRunner::addCollection(TestCollection* collection) +{ + collections.push_back(collection); +} + +void TestRunner::clearCollections() +{ + collections.clear(); +} + +void TestRunner::runTests(bool printPassedTests, bool printFailedTests, bool printPassedCollections, bool printFailedCollections) +{ + totalCollections = 0; + collectionsFailed = 0; + totalTests = 0; + totalFailed = 0; + Test::printPassed(printPassedTests); + Test::printFailed(printFailedTests); + for (int i = 0; i < collections.size(); i++) { + if (printPassedTests || printFailedTests) { + printf("---Testing Collection: %s---\n\r", collections[i]->getName().c_str()); + } + collections[i]->run(); + if (Test::getTotalFailed() == 0) { + if (printPassedCollections) { + printf("---Collection [%s] - PASSED---\n\r\n\r", collections[i]->getName().c_str()); + } + } else { + totalFailed += Test::getTotalFailed(); + collectionsFailed++; + if (printFailedCollections) { + printf("---Collection [%s] - FAILED---\n\r\n\r", collections[i]->getName().c_str()); + } + } + totalCollections++; + totalTests += Test::getTotalTests(); + Test::clearTotals(); + } + printf("\n\r\n\r"); + printf("----------Test Summary----------\n\r"); + printf("[%d/%d] Collections Passed\n\r", (totalCollections - collectionsFailed), totalCollections); + printf("[%d/%d] Tests Passed\n\r", (totalTests - totalFailed), totalTests); + printf("Testing: %s\n\r", !totalFailed ? "SUCCESS!" : "FAILURE..."); +}