summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2014-06-04 23:21:01 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2014-06-04 23:21:01 +0900
commitc0e4381780ae05969aea56a1a11f598f5edce3d8 (patch)
treef780e5ca0b5d693e43df549d47accd8ac9f15010 /test
parent007b890fe4d61f3f2cf26dce9f466b3b0fc709d2 (diff)
util::parseIntSegments: Return SegList<int>
Diffstat (limited to 'test')
-rw-r--r--test/BittorrentHelperTest.cc26
-rw-r--r--test/DownloadContextTest.cc5
-rw-r--r--test/UtilTest.cc73
3 files changed, 44 insertions, 60 deletions
diff --git a/test/BittorrentHelperTest.cc b/test/BittorrentHelperTest.cc
index 8874944f..2b6a7608 100644
--- a/test/BittorrentHelperTest.cc
+++ b/test/BittorrentHelperTest.cc
@@ -652,20 +652,16 @@ void BittorrentHelperTest::testSetFileFilter_single()
load(A2_TEST_DIR"/single.torrent", dctx, option_);
CPPUNIT_ASSERT(dctx->getFirstFileEntry()->isRequested());
- SegList<int> sgl;
- dctx->setFileFilter(sgl);
+
+ dctx->setFileFilter(SegList<int>());
CPPUNIT_ASSERT(dctx->getFirstFileEntry()->isRequested());
- sgl.clear();
- sgl.add(1, 2);
- dctx->setFileFilter(sgl);
+ dctx->setFileFilter(util::parseIntSegments("1,2"));
CPPUNIT_ASSERT(dctx->getFirstFileEntry()->isRequested());
// For single file torrent, file is always selected whatever range
// is passed.
- sgl.clear();
- sgl.add(2, 3);
- dctx->setFileFilter(sgl);
+ dctx->setFileFilter(util::parseIntSegments("2,3"));
CPPUNIT_ASSERT(dctx->getFirstFileEntry()->isRequested());
}
@@ -677,25 +673,19 @@ void BittorrentHelperTest::testSetFileFilter_multi()
CPPUNIT_ASSERT(dctx->getFileEntries()[0]->isRequested());
CPPUNIT_ASSERT(dctx->getFileEntries()[1]->isRequested());
- SegList<int> sgl;
- dctx->setFileFilter(sgl);
+ dctx->setFileFilter(SegList<int>());
CPPUNIT_ASSERT(dctx->getFileEntries()[0]->isRequested());
CPPUNIT_ASSERT(dctx->getFileEntries()[1]->isRequested());
- sgl.add(2, 3);
- dctx->setFileFilter(sgl);
+ dctx->setFileFilter(util::parseIntSegments("2,3"));
CPPUNIT_ASSERT(!dctx->getFileEntries()[0]->isRequested());
CPPUNIT_ASSERT(dctx->getFileEntries()[1]->isRequested());
- sgl.clear();
- sgl.add(3, 4);
- dctx->setFileFilter(sgl);
+ dctx->setFileFilter(util::parseIntSegments("3,4"));
CPPUNIT_ASSERT(!dctx->getFileEntries()[0]->isRequested());
CPPUNIT_ASSERT(!dctx->getFileEntries()[1]->isRequested());
- sgl.clear();
- util::parseIntSegments(sgl, "1,2");
- dctx->setFileFilter(sgl);
+ dctx->setFileFilter(util::parseIntSegments("1,2"));
CPPUNIT_ASSERT(dctx->getFileEntries()[0]->isRequested());
CPPUNIT_ASSERT(dctx->getFileEntries()[1]->isRequested());
}
diff --git a/test/DownloadContextTest.cc b/test/DownloadContextTest.cc
index 9e0ffee4..c0c0f50f 100644
--- a/test/DownloadContextTest.cc
+++ b/test/DownloadContextTest.cc
@@ -83,10 +83,9 @@ void DownloadContextTest::testSetFileFilter()
files.push_back(std::shared_ptr<FileEntry>(new FileEntry("file", 1, i)));
}
ctx.setFileEntries(files.begin(), files.end());
- SegList<int> sgl;
- util::parseIntSegments(sgl, "6-8,2-4");
+ auto sgl = util::parseIntSegments("6-8,2-4");
sgl.normalize();
- ctx.setFileFilter(sgl);
+ ctx.setFileFilter(std::move(sgl));
const std::vector<std::shared_ptr<FileEntry> >& res = ctx.getFileEntries();
CPPUNIT_ASSERT(!res[0]->isRequested());
CPPUNIT_ASSERT(res[1]->isRequested());
diff --git a/test/UtilTest.cc b/test/UtilTest.cc
index aa70512a..65b1d9c5 100644
--- a/test/UtilTest.cc
+++ b/test/UtilTest.cc
@@ -1669,70 +1669,65 @@ void UtilTest::testConvertBitfield()
void UtilTest::testParseIntSegments()
{
- SegList<int> sgl;
- util::parseIntSegments(sgl, "1,3-8,10");
-
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(1, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(3, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(4, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(5, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(6, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(7, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(8, sgl.next());
- CPPUNIT_ASSERT(sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(10, sgl.next());
- CPPUNIT_ASSERT(!sgl.hasNext());
- CPPUNIT_ASSERT_EQUAL(0, sgl.next());
-
- sgl.clear();
- util::parseIntSegments(sgl, ",,,1,,,3,,,");
- CPPUNIT_ASSERT_EQUAL(1, sgl.next());
- CPPUNIT_ASSERT_EQUAL(3, sgl.next());
- CPPUNIT_ASSERT(!sgl.hasNext());
+ {
+ auto sgl = util::parseIntSegments("1,3-8,10");
+
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(1, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(3, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(4, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(5, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(6, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(7, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(8, sgl.next());
+ CPPUNIT_ASSERT(sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(10, sgl.next());
+ CPPUNIT_ASSERT(!sgl.hasNext());
+ CPPUNIT_ASSERT_EQUAL(0, sgl.next());
+ }
+ {
+ auto sgl = util::parseIntSegments(",,,1,,,3,,,");
+ CPPUNIT_ASSERT_EQUAL(1, sgl.next());
+ CPPUNIT_ASSERT_EQUAL(3, sgl.next());
+ CPPUNIT_ASSERT(!sgl.hasNext());
+ }
}
void UtilTest::testParseIntSegments_invalidRange()
{
try {
- SegList<int> sgl;
- util::parseIntSegments(sgl, "-1");
+ auto sgl = util::parseIntSegments("-1");
CPPUNIT_FAIL("exception must be thrown.");
} catch(Exception& e) {
}
try {
- SegList<int> sgl;
- util::parseIntSegments(sgl, "1-");
+ auto sgl = util::parseIntSegments("1-");
CPPUNIT_FAIL("exception must be thrown.");
} catch(Exception& e) {
}
try {
- SegList<int> sgl;
- util::parseIntSegments(sgl, "2147483648");
+ auto sgl = util::parseIntSegments("2147483648");
CPPUNIT_FAIL("exception must be thrown.");
} catch(Exception& e) {
}
try {
- SegList<int> sgl;
- util::parseIntSegments(sgl, "2147483647-2147483648");
+ auto sgl = util::parseIntSegments("2147483647-2147483648");
CPPUNIT_FAIL("exception must be thrown.");
} catch(Exception& e) {
}
try {
- SegList<int> sgl;
- util::parseIntSegments(sgl, "1-2x");
+ auto sgl = util::parseIntSegments("1-2x");
CPPUNIT_FAIL("exception must be thrown.");
} catch(Exception& e) {
}
try {
- SegList<int> sgl;
- util::parseIntSegments(sgl, "3x-4");
+ auto sgl = util::parseIntSegments("3x-4");
CPPUNIT_FAIL("exception must be thrown.");
} catch(Exception& e) {
}