Ejemplo n.º 1
0
int main()
{

  CppUnit::TextUi::TestRunner runner;
  // First add the tests from the named registries in the right order
  // To add/remove/modify a registry name, or to change its sequence
  // number, edit RegistryName.cpp
  for (std::vector<std::string>::const_iterator name = getRegistryNameList().begin();
       getRegistryNameList().end() != name; ++name)
  {
    CppUnit::Test *namedSuite = CppUnit::TestFactoryRegistry::getRegistry(*name).makeTest();
    runner.addTest(namedSuite);
  }

  // Add the top level (unnamed) suite from the list of tests to run
  CppUnit::Test *suite = CppUnit::TestFactoryRegistry::getRegistry().makeTest();
  runner.addTest( suite );

  // Change the default outputter to a compiler error format outputter
  runner.setOutputter( new CppUnit::CompilerOutputter( &runner.result(),
                                                       std::cerr ) );
  // Run the tests.
  bool wasSuccessful = runner.run();

  // Return error code 1 if the one of test failed.
  return wasSuccessful ? 0 : 1;
}
Ejemplo n.º 2
0
std::string registryName(const std::string &name) throw (std::invalid_argument)
{
    const std::vector<std::string> nameList = getRegistryNameList();
    const std::vector<std::string>::const_iterator found = std::find(nameList.begin(), nameList.end(), name);
    if (found != nameList.end())
        return name;

    const std::vector<std::string>::const_iterator commentedFound = std::find(nameList.begin(), nameList.end(), "#" + name);
    if (commentedFound != nameList.end())
        return name;
    else
        throw std::invalid_argument(std::string("Not a registryName: ") + name +
                                    std::string(" [check that ") + getFilePath().string() +
                                    std::string(" contains '") + name + ". Use #"+ name + " to temporary disable a test" +
                                    std::string("']"));
}