diff options
| author | Eric Sommerlade <eric@sommerla.de> | 2000-10-05 17:37:29 +0000 |
|---|---|---|
| committer | Eric Sommerlade <eric@sommerla.de> | 2000-10-05 17:37:29 +0000 |
| commit | c7623ebd7f73cbefd977cd97794a6b846de14205 (patch) | |
| tree | c902c3e55457983c145d46222144b9d8284e66e8 /cppunit/TestRegistry.cpp | |
| download | cppunit-c7623ebd7f73cbefd977cd97794a6b846de14205.tar.gz | |
Initial check in.
Diffstat (limited to 'cppunit/TestRegistry.cpp')
| -rw-r--r-- | cppunit/TestRegistry.cpp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/cppunit/TestRegistry.cpp b/cppunit/TestRegistry.cpp new file mode 100644 index 0000000..7c570db --- /dev/null +++ b/cppunit/TestRegistry.cpp @@ -0,0 +1,70 @@ +#include "TestRegistry.h" +#include "Test.h" + +using namespace std; +using namespace CppUnit; + +std::vector<std::string> s_registry_names; +std::vector<Test*> s_registry_tests; + +static TestRegistry* s_registry; +static bool instanciated=false; + +TestRegistry& +TestRegistry::getRegistry () +{ + if(!instanciated) + s_registry=new TestRegistry(); + return *s_registry; +} + +void +TestRegistry::addTest(string name, Test *test) +{ + s_registry_names.push_back (name); + s_registry_tests.push_back (test); +} + +const vector<string>& +TestRegistry::getAllTestNames () const +{ + return(s_registry_names); +} + +const vector<Test*>& +TestRegistry::getAllTests() const +{ + return(s_registry_tests); +} + +vector<Test*> +TestRegistry::getTest (const string& testCase) const +{ + vector<Test*> res; + vector<Test*>::iterator test_it; + vector<string>::iterator name_it; + for (test_it = s_registry_tests.begin (), + name_it = s_registry_names.begin (); + test_it != s_registry_tests.end (); + ++test_it, ++name_it) { + if ((*name_it) == testCase) { + res.push_back((*test_it)); + break; + } + } + return(res); +} + +TestRegistry::~TestRegistry () +{ + for (vector<Test*>::iterator it = s_registry_tests.begin (); + it != s_registry_tests.end (); + ++it) + delete *it; +} + +TestRegistry::TestRegistry () +{ +} + + |
