| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 | 
							- #include "FeatureConfig.h"
 
- #include <algorithm>
 
- #include <cppunit/extensions/HelperMacros.h>
 
- #include "a2functional.h"
 
- #include "array_fun.h"
 
- #include "util.h"
 
- namespace aria2 {
 
- class FeatureConfigTest : public CppUnit::TestFixture {
 
-   CPPUNIT_TEST_SUITE(FeatureConfigTest);
 
-   CPPUNIT_TEST(testGetDefaultPort);
 
-   CPPUNIT_TEST(testStrSupportedFeature);
 
-   CPPUNIT_TEST(testFeatureSummary);
 
-   CPPUNIT_TEST_SUITE_END();
 
- public:
 
-   void testGetDefaultPort();
 
-   void testStrSupportedFeature();
 
-   void testFeatureSummary();
 
- };
 
- CPPUNIT_TEST_SUITE_REGISTRATION(FeatureConfigTest);
 
- void FeatureConfigTest::testGetDefaultPort()
 
- {
 
-   CPPUNIT_ASSERT_EQUAL((uint16_t)80, getDefaultPort("http"));
 
-   CPPUNIT_ASSERT_EQUAL((uint16_t)443, getDefaultPort("https"));
 
-   CPPUNIT_ASSERT_EQUAL((uint16_t)21, getDefaultPort("ftp"));
 
-   CPPUNIT_ASSERT_EQUAL((uint16_t)22, getDefaultPort("sftp"));
 
- }
 
- void FeatureConfigTest::testStrSupportedFeature()
 
- {
 
-   const char* https = strSupportedFeature(FEATURE_HTTPS);
 
- #ifdef ENABLE_SSL
 
-   CPPUNIT_ASSERT(https);
 
- #else
 
-   CPPUNIT_ASSERT(!https);
 
- #endif // ENABLE_SSL
 
-   CPPUNIT_ASSERT(!strSupportedFeature(MAX_FEATURE));
 
-   auto sftp = strSupportedFeature(FEATURE_SFTP);
 
- #ifdef HAVE_LIBSSH2
 
-   CPPUNIT_ASSERT(sftp);
 
- #else  // !HAVE_LIBSSH2
 
-   CPPUNIT_ASSERT(!sftp);
 
- #endif // !HAVE_LIBSSH2
 
- }
 
- void FeatureConfigTest::testFeatureSummary()
 
- {
 
-   const std::string features[] = {
 
- #ifdef ENABLE_ASYNC_DNS
 
-       "Async DNS",
 
- #endif // ENABLE_ASYNC_DNS
 
- #ifdef ENABLE_BITTORRENT
 
-       "BitTorrent",
 
- #endif // ENABLE_BITTORRENT
 
- #ifdef HAVE_SQLITE3
 
-       "Firefox3 Cookie",
 
- #endif // HAVE_SQLITE3
 
- #ifdef HAVE_ZLIB
 
-       "GZip",
 
- #endif // HAVE_ZLIB
 
- #ifdef ENABLE_SSL
 
-       "HTTPS",
 
- #endif // ENABLE_SSL
 
-       "Message Digest",
 
- #ifdef ENABLE_METALINK
 
-       "Metalink",
 
- #endif // ENABLE_METALINK
 
- #ifdef ENABLE_XML_RPC
 
-       "XML-RPC",
 
- #endif // ENABLE_XML_RPC
 
- #ifdef HAVE_LIBSSH2
 
-       "SFTP",
 
- #endif // HAVE_LIBSSH2
 
-   };
 
-   std::string featuresString =
 
-       strjoin(std::begin(features), std::end(features), ", ");
 
-   CPPUNIT_ASSERT_EQUAL(featuresString, featureSummary());
 
- }
 
- } // namespace aria2
 
 
  |