AllTest.cc 1.5 KB

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