diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2006-06-18 09:23:25 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2006-06-18 09:23:25 +0000 |
| commit | 70ff0c0b3b10e5b58714757a3b6aa55e2569c511 (patch) | |
| tree | e98b35d8d62e0e31d3b87ec92d792a805dcc9e05 /test/RequestTest.cc | |
| parent | d380b7b6abe016dd0334b18972ce08a4fa92a934 (diff) | |
2006-06-18 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
* src/TorrentMan.cc (setupInternal1): Fixed peerId generation
bug.
* src/SimpleLogger.h (writeHeader): New function.
* src/SimpleLogger.cc (writeHeader): New function.
(writeLog): Fixed the bug that causes segfaults if exception
message
contains an unescaped "%" character.
* src/TrackerWatcherCommand.cc (execute): Added a short sleep
when a tracker request fails.
* src/Request.cc (parseUrl): Query string is now handled
properly.
Diffstat (limited to 'test/RequestTest.cc')
| -rw-r--r-- | test/RequestTest.cc | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/test/RequestTest.cc b/test/RequestTest.cc index ede11933..9e639d33 100644 --- a/test/RequestTest.cc +++ b/test/RequestTest.cc @@ -15,6 +15,10 @@ class RequestTest:public CppUnit::TestFixture { CPPUNIT_TEST(testSetUrl8); CPPUNIT_TEST(testSetUrl9); CPPUNIT_TEST(testSetUrl10); + CPPUNIT_TEST(testSetUrl11); + CPPUNIT_TEST(testSetUrl12); + CPPUNIT_TEST(testSetUrl13); + CPPUNIT_TEST(testSetUrl14); CPPUNIT_TEST(testRedirectUrl); CPPUNIT_TEST(testRedirectUrl2); CPPUNIT_TEST(testResetUrl); @@ -32,6 +36,10 @@ public: void testSetUrl8(); void testSetUrl9(); void testSetUrl10(); + void testSetUrl11(); + void testSetUrl12(); + void testSetUrl13(); + void testSetUrl14(); void testRedirectUrl(); void testRedirectUrl2(); void testResetUrl(); @@ -150,6 +158,51 @@ void RequestTest::testSetUrl10() { CPPUNIT_ASSERT(!v); } +void RequestTest::testSetUrl11() { + Request req; + bool v = req.setUrl("http://host?query/"); + + CPPUNIT_ASSERT(v); + CPPUNIT_ASSERT_EQUAL(string("http"), req.getProtocol()); + CPPUNIT_ASSERT_EQUAL(string("host"), req.getHost()); + CPPUNIT_ASSERT_EQUAL(string("/"), req.getDir()); + CPPUNIT_ASSERT_EQUAL(string("?query/"), req.getFile()); +} + +void RequestTest::testSetUrl12() { + Request req; + bool v = req.setUrl("http://host?query"); + + CPPUNIT_ASSERT(v); + CPPUNIT_ASSERT_EQUAL(string("http"), req.getProtocol()); + CPPUNIT_ASSERT_EQUAL(string("host"), req.getHost()); + CPPUNIT_ASSERT_EQUAL(string("/"), req.getDir()); + CPPUNIT_ASSERT_EQUAL(string("?query"), req.getFile()); +} + +void RequestTest::testSetUrl13() { + Request req; + bool v = req.setUrl("http://host/?query"); + + CPPUNIT_ASSERT(v); + CPPUNIT_ASSERT_EQUAL(string("http"), req.getProtocol()); + CPPUNIT_ASSERT_EQUAL(string("host"), req.getHost()); + CPPUNIT_ASSERT_EQUAL(string("/"), req.getDir()); + CPPUNIT_ASSERT_EQUAL(string("?query"), req.getFile()); +} + +void RequestTest::testSetUrl14() { + Request req; + bool v = req.setUrl("http://host:8080/abc?query"); + + CPPUNIT_ASSERT(v); + CPPUNIT_ASSERT_EQUAL(string("http"), req.getProtocol()); + CPPUNIT_ASSERT_EQUAL(string("host"), req.getHost()); + CPPUNIT_ASSERT_EQUAL(8080, req.getPort()); + CPPUNIT_ASSERT_EQUAL(string("/"), req.getDir()); + CPPUNIT_ASSERT_EQUAL(string("abc?query"), req.getFile()); +} + void RequestTest::testRedirectUrl() { Request req; bool v = req.setUrl("http://aria.rednoah.com:8080/aria2/index.html"); |
