mirror of https://github.com/aria2/aria2
2009-05-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
In DefaultBtContext::getActualBasePath(), return first FileEntry::getPath() for single file torrent. * src/DefaultBtContext.cc * test/DefaultBtContextTest.ccpull/1/head
parent
e1f32b6b66
commit
8fe80169b3
|
@ -1,3 +1,10 @@
|
|||
2009-05-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
In DefaultBtContext::getActualBasePath(), return first
|
||||
FileEntry::getPath() for single file torrent.
|
||||
* src/DefaultBtContext.cc
|
||||
* test/DefaultBtContextTest.cc
|
||||
|
||||
2009-05-04 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Removed directIOAllowed() from BinaryStream, DiskWriter,
|
||||
|
|
|
@ -418,7 +418,11 @@ size_t DefaultBtContext::getNumPieces() const {
|
|||
|
||||
std::string DefaultBtContext::getActualBasePath() const
|
||||
{
|
||||
return _dir+"/"+name;
|
||||
if(fileEntries.size() == 1) {
|
||||
return fileEntries.front()->getPath();
|
||||
} else {
|
||||
return _dir+"/"+name;
|
||||
}
|
||||
}
|
||||
|
||||
void DefaultBtContext::computeFastSet
|
||||
|
|
|
@ -43,6 +43,7 @@ class DefaultBtContextTest:public CppUnit::TestFixture {
|
|||
CPPUNIT_TEST(testLoadFromMemory_joinPathMulti);
|
||||
CPPUNIT_TEST(testLoadFromMemory_joinPathSingle);
|
||||
CPPUNIT_TEST(testGetNodes);
|
||||
CPPUNIT_TEST(testGetActualBasePath);
|
||||
CPPUNIT_TEST_SUITE_END();
|
||||
public:
|
||||
void setUp() {
|
||||
|
@ -74,6 +75,7 @@ public:
|
|||
void testLoadFromMemory_joinPathMulti();
|
||||
void testLoadFromMemory_joinPathSingle();
|
||||
void testGetNodes();
|
||||
void testGetActualBasePath();
|
||||
};
|
||||
|
||||
|
||||
|
@ -532,4 +534,18 @@ void DefaultBtContextTest::testGetNodes()
|
|||
|
||||
}
|
||||
|
||||
void DefaultBtContextTest::testGetActualBasePath()
|
||||
{
|
||||
DefaultBtContext singleCtx;
|
||||
singleCtx.load("single.torrent");
|
||||
singleCtx.setFilePathWithIndex(1, "new-path");
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("new-path"), singleCtx.getActualBasePath());
|
||||
|
||||
DefaultBtContext multiCtx;
|
||||
multiCtx.setDir("downloads");
|
||||
multiCtx.load("test.torrent");
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("downloads/aria2-test"),
|
||||
multiCtx.getActualBasePath());
|
||||
}
|
||||
|
||||
} // namespace aria2
|
||||
|
|
Loading…
Reference in New Issue