diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/BtDependencyTest.cc | 6 | ||||
| -rw-r--r-- | test/BtPostDownloadHandlerTest.cc | 6 | ||||
| -rw-r--r-- | test/CookieStorageTest.cc | 1 | ||||
| -rw-r--r-- | test/DefaultBtMessageDispatcherTest.cc | 2 | ||||
| -rw-r--r-- | test/DownloadHandlerFactoryTest.cc | 8 | ||||
| -rw-r--r-- | test/DownloadHelperTest.cc | 32 | ||||
| -rw-r--r-- | test/FeedbackURISelectorTest.cc | 28 | ||||
| -rw-r--r-- | test/FileEntryTest.cc | 45 | ||||
| -rw-r--r-- | test/InOrderURISelectorTest.cc | 23 | ||||
| -rw-r--r-- | test/Metalink2RequestGroupTest.cc | 8 | ||||
| -rw-r--r-- | test/MetalinkPostDownloadHandlerTest.cc | 6 | ||||
| -rw-r--r-- | test/RequestGroupManTest.cc | 6 | ||||
| -rw-r--r-- | test/RequestGroupTest.cc | 74 | ||||
| -rw-r--r-- | test/XmlRpcMethodTest.cc | 14 |
14 files changed, 129 insertions, 130 deletions
diff --git a/test/BtDependencyTest.cc b/test/BtDependencyTest.cc index 104921b2..588f8579 100644 --- a/test/BtDependencyTest.cc +++ b/test/BtDependencyTest.cc @@ -27,8 +27,7 @@ class BtDependencyTest:public CppUnit::TestFixture { SharedHandle<RequestGroup> createDependant(const SharedHandle<Option>& option) { - SharedHandle<RequestGroup> dependant - (new RequestGroup(option, std::deque<std::string>())); + SharedHandle<RequestGroup> dependant(new RequestGroup(option)); SharedHandle<DownloadContext> dctx (new DownloadContext(0, 0, "/tmp/outfile.path")); dctx->setDir("/tmp"); @@ -42,8 +41,7 @@ class BtDependencyTest:public CppUnit::TestFixture { const std::string& torrentFile, int64_t length) { - SharedHandle<RequestGroup> dependee - (new RequestGroup(option, std::deque<std::string>())); + SharedHandle<RequestGroup> dependee(new RequestGroup(option)); SharedHandle<DownloadContext> dctx (new DownloadContext(1024*1024, length, torrentFile)); dctx->setDir("."); diff --git a/test/BtPostDownloadHandlerTest.cc b/test/BtPostDownloadHandlerTest.cc index 17d83c59..4c786dc8 100644 --- a/test/BtPostDownloadHandlerTest.cc +++ b/test/BtPostDownloadHandlerTest.cc @@ -36,7 +36,7 @@ CPPUNIT_TEST_SUITE_REGISTRATION( BtPostDownloadHandlerTest ); void BtPostDownloadHandlerTest::testCanHandle_extension() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test.torrent")); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); BtPostDownloadHandler handler; @@ -51,7 +51,7 @@ void BtPostDownloadHandlerTest::testCanHandle_contentType() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test")); dctx->getFirstFileEntry()->setContentType("application/x-bittorrent"); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); BtPostDownloadHandler handler; @@ -66,7 +66,7 @@ void BtPostDownloadHandlerTest::testGetNextRequestGroups() { SharedHandle<DownloadContext> dctx (new DownloadContext(1024, 0, "test.torrent")); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); rg.initPieceStorage(); diff --git a/test/CookieStorageTest.cc b/test/CookieStorageTest.cc index 2a3c4437..2f4cd8ac 100644 --- a/test/CookieStorageTest.cc +++ b/test/CookieStorageTest.cc @@ -10,6 +10,7 @@ #include "TimeA2.h" #include "CookieParser.h" #include "RecoverableException.h" +#include "File.h" namespace aria2 { diff --git a/test/DefaultBtMessageDispatcherTest.cc b/test/DefaultBtMessageDispatcherTest.cc index a8de2984..4c620406 100644 --- a/test/DefaultBtMessageDispatcherTest.cc +++ b/test/DefaultBtMessageDispatcherTest.cc @@ -137,7 +137,7 @@ public: void setUp() { _option.reset(new Option()); - _rg.reset(new RequestGroup(_option, std::deque<std::string>())); + _rg.reset(new RequestGroup(_option)); _dctx.reset(new DownloadContext()); bittorrent::load("test.torrent", _dctx); diff --git a/test/DownloadHandlerFactoryTest.cc b/test/DownloadHandlerFactoryTest.cc index 4bf4eea3..0e384661 100644 --- a/test/DownloadHandlerFactoryTest.cc +++ b/test/DownloadHandlerFactoryTest.cc @@ -51,7 +51,7 @@ CPPUNIT_TEST_SUITE_REGISTRATION( DownloadHandlerFactoryTest ); void DownloadHandlerFactoryTest::testGetMetalinkPreDownloadHandler_extension() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test.metalink")); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); SharedHandle<PreDownloadHandler> handler = DownloadHandlerFactory::getMetalinkPreDownloadHandler(); @@ -66,7 +66,7 @@ void DownloadHandlerFactoryTest::testGetMetalinkPreDownloadHandler_contentType() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test")); dctx->getFirstFileEntry()->setContentType("application/metalink+xml"); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); SharedHandle<PreDownloadHandler> handler = DownloadHandlerFactory::getMetalinkPreDownloadHandler(); @@ -84,7 +84,7 @@ void DownloadHandlerFactoryTest::testGetMetalinkPreDownloadHandler_contentType() void DownloadHandlerFactoryTest::testGetBtPreDownloadHandler_extension() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test.torrent")); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); SharedHandle<PreDownloadHandler> handler = DownloadHandlerFactory::getBtPreDownloadHandler(); @@ -99,7 +99,7 @@ void DownloadHandlerFactoryTest::testGetBtPreDownloadHandler_contentType() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test")); dctx->getFirstFileEntry()->setContentType("application/x-bittorrent"); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); SharedHandle<PreDownloadHandler> handler = DownloadHandlerFactory::getBtPreDownloadHandler(); diff --git a/test/DownloadHelperTest.cc b/test/DownloadHelperTest.cc index b0d0999c..7255d63b 100644 --- a/test/DownloadHelperTest.cc +++ b/test/DownloadHelperTest.cc @@ -82,7 +82,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri() CPPUNIT_ASSERT_EQUAL((size_t)1, result.size()); SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)3, uris.size()); for(size_t i = 0; i < arrayLength(array); ++i) { CPPUNIT_ASSERT_EQUAL(array[i], uris[i]); @@ -101,7 +101,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri() CPPUNIT_ASSERT_EQUAL((size_t)1, result.size()); SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)5, uris.size()); for(size_t i = 0; i < arrayLength(array); ++i) { CPPUNIT_ASSERT_EQUAL(array[i], uris[i]); @@ -120,7 +120,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri() CPPUNIT_ASSERT_EQUAL((size_t)1, result.size()); SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)3, uris.size()); for(size_t i = 0; i < arrayLength(array); ++i) { CPPUNIT_ASSERT_EQUAL(array[i], uris[i]); @@ -138,7 +138,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri() // for alpha server SharedHandle<RequestGroup> alphaGroup = result[0]; std::deque<std::string> alphaURIs; - alphaGroup->getURIs(alphaURIs); + alphaGroup->getDownloadContext()->getFirstFileEntry()->getUris(alphaURIs); CPPUNIT_ASSERT_EQUAL((size_t)2, alphaURIs.size()); for(size_t i = 0; i < 2; ++i) { CPPUNIT_ASSERT_EQUAL(array[0], uris[0]); @@ -171,7 +171,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri_parameterized() CPPUNIT_ASSERT_EQUAL((size_t)1, result.size()); SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)3, uris.size()); CPPUNIT_ASSERT_EQUAL(std::string("http://alpha/file"), uris[0]); @@ -206,7 +206,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri_BitTorrent() CPPUNIT_ASSERT_EQUAL((size_t)2, result.size()); SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)3, uris.size()); CPPUNIT_ASSERT_EQUAL(array[0], uris[0]); @@ -221,7 +221,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri_BitTorrent() SharedHandle<RequestGroup> torrentGroup = result[1]; std::deque<std::string> auxURIs; - torrentGroup->getURIs(auxURIs); + torrentGroup->getDownloadContext()->getFirstFileEntry()->getUris(auxURIs); CPPUNIT_ASSERT(auxURIs.empty()); CPPUNIT_ASSERT_EQUAL((unsigned int)3, torrentGroup->getNumConcurrentCommand()); @@ -262,7 +262,7 @@ void DownloadHelperTest::testCreateRequestGroupForUri_Metalink() SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)3, uris.size()); for(size_t i = 0; i < 3; ++i) { CPPUNIT_ASSERT_EQUAL(array[i], uris[i]); @@ -304,7 +304,7 @@ void DownloadHelperTest::testCreateRequestGroupForUriList() SharedHandle<RequestGroup> fileGroup = result[0]; std::deque<std::string> fileURIs; - fileGroup->getURIs(fileURIs); + fileGroup->getDownloadContext()->getFirstFileEntry()->getUris(fileURIs); CPPUNIT_ASSERT_EQUAL(std::string("http://alpha/file"), fileURIs[0]); CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), fileURIs[1]); CPPUNIT_ASSERT_EQUAL(std::string("http://charlie/file"), fileURIs[2]); @@ -344,13 +344,11 @@ void DownloadHelperTest::testCreateRequestGroupForBitTorrent() SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); - CPPUNIT_ASSERT_EQUAL((size_t)5, uris.size()); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); + // See -s option is ignored + CPPUNIT_ASSERT_EQUAL((size_t)3, uris.size()); for(size_t i = 0; i < arrayLength(array); ++i) { - CPPUNIT_ASSERT_EQUAL(array[i], uris[i]); - } - for(size_t i = 0; i < 5-arrayLength(array); ++i) { - CPPUNIT_ASSERT_EQUAL(array[i], uris[i+arrayLength(array)]); + CPPUNIT_ASSERT_EQUAL(array[i]+"/aria2-test/aria2/src/aria2c", uris[i]); } CPPUNIT_ASSERT_EQUAL((unsigned int)5, group->getNumConcurrentCommand()); } @@ -363,7 +361,7 @@ void DownloadHelperTest::testCreateRequestGroupForBitTorrent() CPPUNIT_ASSERT_EQUAL((size_t)1, result.size()); SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)0, uris.size()); } _option->put(PREF_FORCE_SEQUENTIAL, V_TRUE); @@ -398,7 +396,7 @@ void DownloadHelperTest::testCreateRequestGroupForMetalink() #endif // !ENABLE_BITTORRENT SharedHandle<RequestGroup> group = result[0]; std::deque<std::string> uris; - group->getURIs(uris); + group->getDownloadContext()->getFirstFileEntry()->getUris(uris); std::sort(uris.begin(), uris.end()); CPPUNIT_ASSERT_EQUAL((size_t)2, uris.size()); CPPUNIT_ASSERT_EQUAL(std::string("ftp://ftphost/aria2-0.5.2.tar.bz2"), diff --git a/test/FeedbackURISelectorTest.cc b/test/FeedbackURISelectorTest.cc index 5dcf2c76..783f5680 100644 --- a/test/FeedbackURISelectorTest.cc +++ b/test/FeedbackURISelectorTest.cc @@ -1,7 +1,5 @@ #include "FeedbackURISelector.h" -#include <iostream> - #include <cppunit/extensions/HelperMacros.h> #include "Exception.h" @@ -9,6 +7,7 @@ #include "array_fun.h" #include "ServerStatMan.h" #include "ServerStat.h" +#include "FileEntry.h" namespace aria2 { @@ -20,8 +19,7 @@ class FeedbackURISelectorTest:public CppUnit::TestFixture { CPPUNIT_TEST(testSelect_skipErrorHost); CPPUNIT_TEST_SUITE_END(); private: - - std::deque<std::string> uris; + FileEntry _fileEntry; SharedHandle<ServerStatMan> ssm; @@ -35,8 +33,11 @@ public: "ftp://alpha/file", "http://bravo/file" }; + std::deque<std::string> uris; uris.assign(&urisSrc[0], &urisSrc[arrayLength(urisSrc)]); + _fileEntry.setUris(uris); + ssm.reset(new ServerStatMan()); sel.reset(new FeedbackURISelector(ssm)); } @@ -56,9 +57,9 @@ CPPUNIT_TEST_SUITE_REGISTRATION(FeedbackURISelectorTest); void FeedbackURISelectorTest::testSelect_withoutServerStat() { // Without ServerStat, selector returns first URI - std::string uri = sel->select(uris); + std::string uri = sel->select(&_fileEntry); CPPUNIT_ASSERT_EQUAL(std::string("http://alpha/file"), uri); - CPPUNIT_ASSERT_EQUAL((size_t)2, uris.size()); + CPPUNIT_ASSERT_EQUAL((size_t)2, _fileEntry.getRemainingUris().size()); } void FeedbackURISelectorTest::testSelect() @@ -75,11 +76,13 @@ void FeedbackURISelectorTest::testSelect() ssm->add(alphaFTP); ssm->add(alphaHTTP); - CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), sel->select(uris)); - CPPUNIT_ASSERT_EQUAL((size_t)2, uris.size()); + CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), + sel->select(&_fileEntry)); + CPPUNIT_ASSERT_EQUAL((size_t)2, _fileEntry.getRemainingUris().size()); - CPPUNIT_ASSERT_EQUAL(std::string("ftp://alpha/file"), sel->select(uris)); - CPPUNIT_ASSERT_EQUAL((size_t)1, uris.size()); + CPPUNIT_ASSERT_EQUAL(std::string("ftp://alpha/file"), + sel->select(&_fileEntry)); + CPPUNIT_ASSERT_EQUAL((size_t)1, _fileEntry.getRemainingUris().size()); } void FeedbackURISelectorTest::testSelect_skipErrorHost() @@ -93,8 +96,9 @@ void FeedbackURISelectorTest::testSelect_skipErrorHost() ssm->add(alphaFTP); // See error URIs are removed from URI List. - CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), sel->select(uris)); - CPPUNIT_ASSERT_EQUAL((size_t)0, uris.size()); + CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), + sel->select(&_fileEntry)); + CPPUNIT_ASSERT_EQUAL((size_t)0, _fileEntry.getRemainingUris().size()); } } // namespace aria2 diff --git a/test/FileEntryTest.cc b/test/FileEntryTest.cc index 5c3f70f6..475680fd 100644 --- a/test/FileEntryTest.cc +++ b/test/FileEntryTest.cc @@ -7,11 +7,15 @@ class FileEntryTest : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(FileEntryTest); CPPUNIT_TEST(testSetupDir); + CPPUNIT_TEST(testRemoveURIWhoseHostnameIs); + CPPUNIT_TEST(testExtractURIResult); CPPUNIT_TEST_SUITE_END(); public: void setUp() {} void testSetupDir(); + void testRemoveURIWhoseHostnameIs(); + void testExtractURIResult(); }; @@ -34,4 +38,45 @@ void FileEntryTest::testSetupDir() CPPUNIT_ASSERT(!f.exists()); } +void FileEntryTest::testRemoveURIWhoseHostnameIs() +{ + const char* uris[] = { "http://localhost/aria2.zip", + "ftp://localhost/aria2.zip", + "http://mirror/aria2.zip" }; + FileEntry fileEntry; + fileEntry.setUris(std::deque<std::string>(&uris[0], &uris[3])); + fileEntry.removeURIWhoseHostnameIs("localhost"); + CPPUNIT_ASSERT_EQUAL((size_t)1, fileEntry.getRemainingUris().size()); + CPPUNIT_ASSERT_EQUAL(std::string("http://mirror/aria2.zip"), + fileEntry.getRemainingUris()[0]); +} + + +void FileEntryTest::testExtractURIResult() +{ + FileEntry fileEntry; + fileEntry.addURIResult("http://timeout/file", downloadresultcode::TIME_OUT); + fileEntry.addURIResult("http://finished/file", downloadresultcode::FINISHED); + fileEntry.addURIResult("http://timeout/file2", downloadresultcode::TIME_OUT); + fileEntry.addURIResult("http://unknownerror/file", downloadresultcode::UNKNOWN_ERROR); + + std::deque<URIResult> res; + fileEntry.extractURIResult(res, downloadresultcode::TIME_OUT); + CPPUNIT_ASSERT_EQUAL((size_t)2, res.size()); + CPPUNIT_ASSERT_EQUAL(std::string("http://timeout/file"), res[0].getURI()); + CPPUNIT_ASSERT_EQUAL(std::string("http://timeout/file2"), res[1].getURI()); + + CPPUNIT_ASSERT_EQUAL((size_t)2, fileEntry.getURIResults().size()); + CPPUNIT_ASSERT_EQUAL(std::string("http://finished/file"), + fileEntry.getURIResults()[0].getURI()); + CPPUNIT_ASSERT_EQUAL(std::string("http://unknownerror/file"), + fileEntry.getURIResults()[1].getURI()); + + res.clear(); + + fileEntry.extractURIResult(res, downloadresultcode::TIME_OUT); + CPPUNIT_ASSERT(res.empty()); + CPPUNIT_ASSERT_EQUAL((size_t)2, fileEntry.getURIResults().size()); +} + } // namespace aria2 diff --git a/test/InOrderURISelectorTest.cc b/test/InOrderURISelectorTest.cc index c77b114c..3663a9f9 100644 --- a/test/InOrderURISelectorTest.cc +++ b/test/InOrderURISelectorTest.cc @@ -1,9 +1,11 @@ #include "InOrderURISelector.h" + +#include <cppunit/extensions/HelperMacros.h> + #include "Exception.h" #include "Util.h" #include "array_fun.h" -#include <iostream> -#include <cppunit/extensions/HelperMacros.h> +#include "FileEntry.h" namespace aria2 { @@ -13,8 +15,7 @@ class InOrderURISelectorTest:public CppUnit::TestFixture { CPPUNIT_TEST(testSelect); CPPUNIT_TEST_SUITE_END(); private: - - std::deque<std::string> uris; + FileEntry _fileEntry; SharedHandle<InOrderURISelector> sel; @@ -26,8 +27,11 @@ public: "ftp://alpha/file", "http://bravo/file" }; + std::deque<std::string> uris; uris.assign(&urisSrc[0], &urisSrc[arrayLength(urisSrc)]); + _fileEntry.setUris(uris); + sel.reset(new InOrderURISelector()); } @@ -41,10 +45,13 @@ CPPUNIT_TEST_SUITE_REGISTRATION(InOrderURISelectorTest); void InOrderURISelectorTest::testSelect() { - CPPUNIT_ASSERT_EQUAL(std::string("http://alpha/file"), sel->select(uris)); - CPPUNIT_ASSERT_EQUAL(std::string("ftp://alpha/file"), sel->select(uris)); - CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), sel->select(uris)); - CPPUNIT_ASSERT_EQUAL(std::string(""), sel->select(uris)); + CPPUNIT_ASSERT_EQUAL(std::string("http://alpha/file"), + sel->select(&_fileEntry)); + CPPUNIT_ASSERT_EQUAL(std::string("ftp://alpha/file"), + sel->select(&_fileEntry)); + CPPUNIT_ASSERT_EQUAL(std::string("http://bravo/file"), + sel->select(&_fileEntry)); + CPPUNIT_ASSERT_EQUAL(std::string(""), sel->select(&_fileEntry)); } } // namespace aria2 diff --git a/test/Metalink2RequestGroupTest.cc b/test/Metalink2RequestGroupTest.cc index 49ad2932..5df90552 100644 --- a/test/Metalink2RequestGroupTest.cc +++ b/test/Metalink2RequestGroupTest.cc @@ -42,7 +42,7 @@ void Metalink2RequestGroupTest::testGenerate() { SharedHandle<RequestGroup> rg = groups[0]; std::deque<std::string> uris; - rg->getURIs(uris); + rg->getDownloadContext()->getFirstFileEntry()->getUris(uris); std::sort(uris.begin(), uris.end()); CPPUNIT_ASSERT_EQUAL((size_t)2, uris.size()); CPPUNIT_ASSERT_EQUAL @@ -68,7 +68,7 @@ void Metalink2RequestGroupTest::testGenerate() { SharedHandle<RequestGroup> rg = groups[1]; std::deque<std::string> uris; - rg->getURIs(uris); + rg->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)2, uris.size()); const SharedHandle<DownloadContext>& dctx = rg->getDownloadContext(); @@ -90,7 +90,7 @@ void Metalink2RequestGroupTest::testGenerate() { SharedHandle<RequestGroup> rg = groups[4]; std::deque<std::string> uris; - rg->getURIs(uris); + rg->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)1, uris.size()); CPPUNIT_ASSERT_EQUAL (std::string("http://host/torrent-http.integrated.torrent"), uris[0]); @@ -110,7 +110,7 @@ void Metalink2RequestGroupTest::testGenerate() SharedHandle<RequestGroup> rg = groups[4]; #endif // ENABLE_BITTORRENT std::deque<std::string> uris; - rg->getURIs(uris); + rg->getDownloadContext()->getFirstFileEntry()->getUris(uris); CPPUNIT_ASSERT_EQUAL((size_t)1, uris.size()); CPPUNIT_ASSERT_EQUAL (std::string("http://host/torrent-http.integrated"), uris[0]); diff --git a/test/MetalinkPostDownloadHandlerTest.cc b/test/MetalinkPostDownloadHandlerTest.cc index 8e9abbdc..4f8dbe0f 100644 --- a/test/MetalinkPostDownloadHandlerTest.cc +++ b/test/MetalinkPostDownloadHandlerTest.cc @@ -36,7 +36,7 @@ void MetalinkPostDownloadHandlerTest::testCanHandle_extension() { SharedHandle<DownloadContext> dctx (new DownloadContext(0, 0, "test.metalink")); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); MetalinkPostDownloadHandler handler; @@ -51,7 +51,7 @@ void MetalinkPostDownloadHandlerTest::testCanHandle_contentType() { SharedHandle<DownloadContext> dctx(new DownloadContext(0, 0, "test")); dctx->getFirstFileEntry()->setContentType("application/metalink+xml"); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); MetalinkPostDownloadHandler handler; @@ -66,7 +66,7 @@ void MetalinkPostDownloadHandlerTest::testGetNextRequestGroups() { SharedHandle<DownloadContext> dctx (new DownloadContext(1024, 0, "test.xml")); - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); rg.setDownloadContext(dctx); rg.initPieceStorage(); diff --git a/test/RequestGroupManTest.cc b/test/RequestGroupManTest.cc index ba83984d..88dd37f1 100644 --- a/test/RequestGroupManTest.cc +++ b/test/RequestGroupManTest.cc @@ -43,10 +43,8 @@ CPPUNIT_TEST_SUITE_REGISTRATION( RequestGroupManTest ); void RequestGroupManTest::testIsSameFileBeingDownloaded() { - std::deque<std::string> uris; - uris.push_back("http://localhost/aria2.tar.bz2"); - SharedHandle<RequestGroup> rg1(new RequestGroup(_option, uris)); - SharedHandle<RequestGroup> rg2(new RequestGroup(_option, uris)); + SharedHandle<RequestGroup> rg1(new RequestGroup(_option)); + SharedHandle<RequestGroup> rg2(new RequestGroup(_option)); SharedHandle<DownloadContext> dctx1 (new DownloadContext(0, 0, "aria2.tar.bz2")); diff --git a/test/RequestGroupTest.cc b/test/RequestGroupTest.cc index 17ab9c02..429dcd40 100644 --- a/test/RequestGroupTest.cc +++ b/test/RequestGroupTest.cc @@ -7,6 +7,7 @@ #include "DownloadContext.h" #include "FileEntry.h" #include "PieceStorage.h" +#include "DownloadResult.h" namespace aria2 { @@ -14,10 +15,8 @@ class RequestGroupTest : public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(RequestGroupTest); CPPUNIT_TEST(testRegisterSearchRemove); - CPPUNIT_TEST(testRemoveURIWhoseHostnameIs); CPPUNIT_TEST(testGetFirstFilePath); CPPUNIT_TEST(testCreateDownloadResult); - CPPUNIT_TEST(testExtractURIResult); CPPUNIT_TEST_SUITE_END(); private: SharedHandle<Option> _option; @@ -28,10 +27,8 @@ public: } void testRegisterSearchRemove(); - void testRemoveURIWhoseHostnameIs(); void testGetFirstFilePath(); void testCreateDownloadResult(); - void testExtractURIResult(); }; @@ -39,7 +36,7 @@ CPPUNIT_TEST_SUITE_REGISTRATION( RequestGroupTest ); void RequestGroupTest::testRegisterSearchRemove() { - RequestGroup rg(_option, std::deque<std::string>()); + RequestGroup rg(_option); SharedHandle<ServerHost> sv1(new ServerHost(1, "localhost1")); SharedHandle<ServerHost> sv2(new ServerHost(2, "localhost2")); SharedHandle<ServerHost> sv3(new ServerHost(3, "localhost3")); @@ -69,25 +66,12 @@ void RequestGroupTest::testRegisterSearchRemove() } } -void RequestGroupTest::testRemoveURIWhoseHostnameIs() -{ - const char* uris[] = { "http://localhost/aria2.zip", - "ftp://localhost/aria2.zip", - "http://mirror/aria2.zip" }; - RequestGroup rg(_option, std::deque<std::string>(&uris[0], &uris[3])); - rg.removeURIWhoseHostnameIs("localhost"); - CPPUNIT_ASSERT_EQUAL((size_t)1, rg.getRemainingUris().size()); - CPPUNIT_ASSERT_EQUAL(std::string("http://mirror/aria2.zip"), - rg.getRemainingUris()[0]); -} - void RequestGroupTest::testGetFirstFilePath() { SharedHandle<DownloadContext> ctx (new DownloadContext(1024, 1024, "/tmp/myfile")); - std::deque<std::string> uris; - RequestGroup group(_option, uris); + RequestGroup group(_option); group.setDownloadContext(ctx); CPPUNIT_ASSERT_EQUAL(std::string("/tmp/myfile"), group.getFirstFilePath()); @@ -101,12 +85,7 @@ void RequestGroupTest::testCreateDownloadResult() { SharedHandle<DownloadContext> ctx (new DownloadContext(1024, 1024*1024, "/tmp/myfile")); - //ctx->setDir("/tmp"); - std::deque<std::string> uris; - uris.push_back("http://first/file"); - uris.push_back("http://second/file"); - - RequestGroup group(_option, uris); + RequestGroup group(_option); group.setDownloadContext(ctx); group.initPieceStorage(); { @@ -114,64 +93,35 @@ void RequestGroupTest::testCreateDownloadResult() CPPUNIT_ASSERT_EQUAL(std::string("/tmp/myfile"), result->fileEntries[0]->getPath()); - CPPUNIT_ASSERT_EQUAL((uint64_t)1024*1024, result->totalLength); - CPPUNIT_ASSERT_EQUAL(std::string("http://first/file"), result->uri); - CPPUNIT_ASSERT_EQUAL((size_t)2, result->numUri); + CPPUNIT_ASSERT_EQUAL((off_t)1024*1024, + result->fileEntries.back()->getLastOffset()); CPPUNIT_ASSERT_EQUAL((uint64_t)0, result->sessionDownloadLength); CPPUNIT_ASSERT_EQUAL((int64_t)0, result->sessionTime); // result is UNKNOWN_ERROR if download has not completed and no specific // error has been reported - CPPUNIT_ASSERT_EQUAL(DownloadResult::UNKNOWN_ERROR, result->result); + CPPUNIT_ASSERT_EQUAL(downloadresultcode::UNKNOWN_ERROR, result->result); // if haltReason is set to RequestGroup::USER_REQUEST, download // result becomes IN_PROGRESS group.setHaltRequested(true, RequestGroup::USER_REQUEST); result = group.createDownloadResult(); - CPPUNIT_ASSERT_EQUAL(DownloadResult::IN_PROGRESS, result->result); + CPPUNIT_ASSERT_EQUAL(downloadresultcode::IN_PROGRESS, result->result); } { - group.addURIResult("http://first/file", DownloadResult::TIME_OUT); - group.addURIResult("http://second/file",DownloadResult::RESOURCE_NOT_FOUND); + group.setLastUriResult + ("http://second/file",downloadresultcode::RESOURCE_NOT_FOUND); SharedHandle<DownloadResult> result = group.createDownloadResult(); - CPPUNIT_ASSERT_EQUAL(DownloadResult::RESOURCE_NOT_FOUND, result->result); + CPPUNIT_ASSERT_EQUAL(downloadresultcode::RESOURCE_NOT_FOUND, result->result); } { group.getPieceStorage()->markAllPiecesDone(); SharedHandle<DownloadResult> result = group.createDownloadResult(); - CPPUNIT_ASSERT_EQUAL(DownloadResult::FINISHED, result->result); + CPPUNIT_ASSERT_EQUAL(downloadresultcode::FINISHED, result->result); } } -void RequestGroupTest::testExtractURIResult() -{ - RequestGroup group(_option, std::deque<std::string>()); - group.addURIResult("http://timeout/file", DownloadResult::TIME_OUT); - group.addURIResult("http://finished/file", DownloadResult::FINISHED); - group.addURIResult("http://timeout/file2", DownloadResult::TIME_OUT); - group.addURIResult("http://unknownerror/file", DownloadResult::UNKNOWN_ERROR); - - std::deque<URIResult> res; - group.extractURIResult(res, DownloadResult::TIME_OUT); - CPPUNIT_ASSERT_EQUAL((size_t)2, res.size()); - CPPUNIT_ASSERT_EQUAL(std::string("http://timeout/file"), res[0].getURI()); - CPPUNIT_ASSERT_EQUAL(std::string("http://timeout/file2"), res[1].getURI()); - - CPPUNIT_ASSERT_EQUAL((size_t)2, group.getURIResults().size()); - CPPUNIT_ASSERT_EQUAL(std::string("http://finished/file"), - group.getURIResults()[0].getURI()); - CPPUNIT_ASSERT_EQUAL(std::string("http://unknownerror/file"), - group.getURIResults()[1].getURI()); - - res.clear(); - - group.extractURIResult(res, DownloadResult::TIME_OUT); - CPPUNIT_ASSERT(res.empty()); - CPPUNIT_ASSERT_EQUAL((size_t)2, group.getURIResults().size()); -} - - } // namespace aria2 diff --git a/test/XmlRpcMethodTest.cc b/test/XmlRpcMethodTest.cc index e8589d92..5aa86cfa 100644 --- a/test/XmlRpcMethodTest.cc +++ b/test/XmlRpcMethodTest.cc @@ -117,7 +117,7 @@ void XmlRpcMethodTest::testAddUri() _e->_requestGroupMan->getReservedGroups(); CPPUNIT_ASSERT_EQUAL((size_t)1, rgs.size()); CPPUNIT_ASSERT_EQUAL(std::string("http://localhost/"), - rgs.front()->getRemainingUris().front()); + rgs.front()->getDownloadContext()->getFirstFileEntry()->getRemainingUris().front()); } // with options BDE opt = BDE::dict(); @@ -180,7 +180,7 @@ void XmlRpcMethodTest::testAddUri_withPosition() m.execute(req2, _e.get()); std::string uri = - _e->_requestGroupMan->getReservedGroups()[0]->getRemainingUris()[0]; + _e->_requestGroupMan->getReservedGroups()[0]->getDownloadContext()->getFirstFileEntry()->getRemainingUris()[0]; CPPUNIT_ASSERT_EQUAL(std::string("http://uri2"), uri); } @@ -215,9 +215,9 @@ void XmlRpcMethodTest::testAddTorrent() CPPUNIT_ASSERT(!group.isNull()); CPPUNIT_ASSERT_EQUAL(std::string("/tmp/aria2-0.8.2.tar.bz2"), group->getFirstFilePath()); - CPPUNIT_ASSERT_EQUAL((size_t)1, group->getRemainingUris().size()); + CPPUNIT_ASSERT_EQUAL((size_t)1, group->getDownloadContext()->getFirstFileEntry()->getRemainingUris().size()); CPPUNIT_ASSERT_EQUAL(std::string("http://localhost/aria2-0.8.2.tar.bz2"), - group->getRemainingUris()[0]); + group->getDownloadContext()->getFirstFileEntry()->getRemainingUris()[0]); } // with options BDE opt = BDE::dict(); @@ -349,8 +349,7 @@ void XmlRpcMethodTest::testAddMetalink_withPosition() void XmlRpcMethodTest::testChangeOption() { - SharedHandle<RequestGroup> group - (new RequestGroup(_option, std::deque<std::string>())); + SharedHandle<RequestGroup> group(new RequestGroup(_option)); _e->_requestGroupMan->addReservedGroup(group); ChangeOptionXmlRpcMethod m; @@ -374,8 +373,7 @@ void XmlRpcMethodTest::testChangeOption() void XmlRpcMethodTest::testChangeOption_withBadOption() { - SharedHandle<RequestGroup> group - (new RequestGroup(_option, std::deque<std::string>())); + SharedHandle<RequestGroup> group(new RequestGroup(_option)); _e->_requestGroupMan->addReservedGroup(group); ChangeOptionXmlRpcMethod m; |
