AllTest.cc 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #include "common.h"
  2. #include <iostream>
  3. #include <cppunit/CompilerOutputter.h>
  4. #include <cppunit/extensions/TestFactoryRegistry.h>
  5. #include <cppunit/ui/text/TestRunner.h>
  6. #include "Platform.h"
  7. #include "SocketCore.h"
  8. #include "util.h"
  9. #include "console.h"
  10. int main(int argc, char* argv[]) {
  11. aria2::global::initConsole(false);
  12. aria2::Platform platform;
  13. #ifdef ENABLE_NLS
  14. // Set locale to C to prevent the messages to be localized.
  15. setlocale (LC_CTYPE, "C");
  16. setlocale (LC_MESSAGES, "C");
  17. #endif // ENABLE_NLS
  18. // By default, SocketCore uses AF_UNSPEC for getaddrinfo hints to
  19. // resolve address. Sometime SocketCore::bind() and
  20. // SocketCore::establishConnection() use difference protocl family
  21. // and latter cannot connect to former. To avoid this situation, we
  22. // limit protocol family to AF_INET for unit tests.
  23. aria2::SocketCore::setProtocolFamily(AF_INET);
  24. // If AI_ADDRCONFIG is set, tests fail if IPv4 address is not
  25. // configured.
  26. aria2::setDefaultAIFlags(0);
  27. // Create output directory
  28. aria2::util::mkdirs(A2_TEST_OUT_DIR);
  29. CppUnit::Test* suite = CppUnit::TestFactoryRegistry::getRegistry().makeTest();
  30. CppUnit::TextUi::TestRunner runner;
  31. runner.addTest(suite);
  32. runner.setOutputter(new CppUnit::CompilerOutputter(&runner.result(), std::cerr));
  33. // Run the tests.
  34. bool successfull = runner.run();
  35. return successfull ? 0 : 1;
  36. }