diff options
Diffstat (limited to 'examples/cppunittest/CppUnitTestMain.cpp')
-rw-r--r-- | examples/cppunittest/CppUnitTestMain.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/examples/cppunittest/CppUnitTestMain.cpp b/examples/cppunittest/CppUnitTestMain.cpp index 4b62612..df87464 100644 --- a/examples/cppunittest/CppUnitTestMain.cpp +++ b/examples/cppunittest/CppUnitTestMain.cpp @@ -1,14 +1,26 @@ -#include <cppunit/TextTestRunner.h> #include <cppunit/extensions/TestFactoryRegistry.h> +#include <cppunit/CompilerTestResultOutputter.h> +#include <cppunit/TextTestResult.h> +#include <cppunit/TextTestRunner.h> #include "CppUnitTestSuite.h" + int main( int argc, char* argv[] ) { + bool selfTest = (argc > 1) && + (std::string("-selftest") == argv[1]); + CppUnit::TextTestRunner runner; runner.addTest( CppUnitTest::suite() ); - bool wasSucessful = runner.run(); + bool wasSucessful = runner.run( "", false, !selfTest ); + if ( selfTest ) + { + CppUnit::CompilerTestResultOutputter outputter( runner.result(), + std::cerr ); + outputter.write(); + } return wasSucessful ? 0 : 1; } |