mirror of
https://github.com/aria2/aria2.git
synced 2025-04-05 21:47:37 +03:00
2010-06-18 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Introduced ValueBase class, which is a replacement of BDE. In this change ValueBase is used instead of BDE except DHT messages, UTMetadata messages and XML-RPC. They'll be replaced in the later commits. DownloadContext::_attrs is now ContextAttribute rather than BDE. * src/ActivePeerConnectionCommand.cc * src/AnnounceList.cc * src/AnnounceList.h * src/BtDependency.cc * src/BtRegistry.cc * src/BtSetup.cc * src/ConsoleStatCalc.cc * src/ContextAttribute.h * src/DefaultBtAnnounce.cc * src/DefaultBtInteractive.cc * src/DownloadContext.cc * src/DownloadContext.h * src/HandshakeExtensionMessage.cc * src/InitiateConnectionCommand.cc * src/LpdReceiveMessageCommand.cc * src/MSEHandshake.cc * src/Makefile.am * src/Makefile.in * src/PeerInteractionCommand.cc * src/PeerListProcessor.h * src/ProtocolDetector.cc * src/RequestGroup.cc * src/RequestGroupMan.cc * src/TorrentAttribute.h * src/TrackerWatcherCommand.cc * src/UTMetadataDataExtensionMessage.cc * src/UTMetadataPostDownloadHandler.cc * src/UTMetadataRequestExtensionMessage.cc * src/ValueBase.cc * src/ValueBase.h * src/XmlRpcMethodImpl.cc * src/XmlRpcMethodImpl.h * src/bencode2.cc * src/bencode2.h * src/bittorrent_helper.cc * src/bittorrent_helper.h * src/download_helper.cc * src/magnet.cc * src/magnet.h * test/AnnounceListTest.cc * test/Bencode2Test.cc * test/BencodeTest.cc * test/BittorrentHelperTest.cc * test/BtDependencyTest.cc * test/BtRegistryTest.cc * test/DefaultBtAnnounceTest.cc * test/DefaultBtProgressInfoFileTest.cc * test/HandshakeExtensionMessageTest.cc * test/MSEHandshakeTest.cc * test/MagnetTest.cc * test/Makefile.am * test/Makefile.in * test/RequestGroupManTest.cc * test/UTMetadataDataExtensionMessageTest.cc * test/UTMetadataPostDownloadHandlerTest.cc * test/UTMetadataRequestExtensionMessageTest.cc * test/ValueBaseTest.cc * test/XmlRpcMethodTest.cc
This commit is contained in:
parent
98dc02192d
commit
8ba97188ce
59 changed files with 2303 additions and 641 deletions
|
@ -20,19 +20,23 @@ public:
|
|||
|
||||
CPPUNIT_TEST_SUITE_REGISTRATION(MagnetTest);
|
||||
|
||||
static const std::string& nthStr(const SharedHandle<ValueBase>& v, size_t index)
|
||||
{
|
||||
return asString(asList(v)->get(index))->s();
|
||||
}
|
||||
|
||||
void MagnetTest::testParse()
|
||||
{
|
||||
BDE r = parse
|
||||
SharedHandle<Dict> r = parse
|
||||
("magnet:?xt=urn:btih:248d0a1cd08284299de78d5c1ed359bb46717d8c&dn=aria2"
|
||||
"&tr=http%3A%2F%2Ftracker1&tr=http://tracker2");
|
||||
CPPUNIT_ASSERT_EQUAL
|
||||
(std::string("urn:btih:248d0a1cd08284299de78d5c1ed359bb46717d8c"),
|
||||
r["xt"][0].s());
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("aria2"), r["dn"][0].s());
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("http://tracker1"), r["tr"][0].s());
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("http://tracker2"), r["tr"][1].s());
|
||||
|
||||
CPPUNIT_ASSERT(parse("http://localhost").isNone());
|
||||
nthStr(r->get("xt"), 0));
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("aria2"), nthStr(r->get("dn"), 0));
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("http://tracker1"), nthStr(r->get("tr"), 0));
|
||||
CPPUNIT_ASSERT_EQUAL(std::string("http://tracker2"), nthStr(r->get("tr"), 1));
|
||||
CPPUNIT_ASSERT(parse("http://localhost").isNull());
|
||||
}
|
||||
|
||||
} // namespace magnet
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue