AllTest.cc 1.5 KB

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