summaryrefslogtreecommitdiff
path: root/test/HttpRequestTest.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-04-20 06:30:44 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-04-20 06:30:44 +0000
commit3eb74629cbd0f01113bc581d486a8ec95633b4ad (patch)
tree53028931fb30d824e2226e6cfef6c51c9863c120 /test/HttpRequestTest.cc
parentc1c5e7369f77a1125b12ac58b8b30378858d9317 (diff)
2008-04-20 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added --header option. You can specify any number of additional HTTP headers like: aria2 --header="X-A: 300" --header="X-B: 900" http://host/file Unlike other commad-line option, you can use --header option multiple times. * src/HelpItemFactory.cc * src/HttpRequest.{cc, h} * src/HttpRequestCommand.cc * src/OptionHandlerFactory.cc * src/OptionHandlerImpl.h * src/option_processing.cc * src/prefs.h * src/usage_text.h * test/HttpRequestTest.cc (testUserHeaders)
Diffstat (limited to 'test/HttpRequestTest.cc')
-rw-r--r--test/HttpRequestTest.cc26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/HttpRequestTest.cc b/test/HttpRequestTest.cc
index a06109d5..a2ffb558 100644
--- a/test/HttpRequestTest.cc
+++ b/test/HttpRequestTest.cc
@@ -22,6 +22,7 @@ class HttpRequestTest : public CppUnit::TestFixture {
CPPUNIT_TEST(testCreateProxyRequest);
CPPUNIT_TEST(testIsRangeSatisfied);
CPPUNIT_TEST(testUserAgent);
+ CPPUNIT_TEST(testUserHeaders);
CPPUNIT_TEST_SUITE_END();
private:
@@ -36,6 +37,7 @@ public:
void testCreateProxyRequest();
void testIsRangeSatisfied();
void testUserAgent();
+ void testUserHeaders();
};
@@ -557,4 +559,28 @@ void HttpRequestTest::testUserAgent()
CPPUNIT_ASSERT_EQUAL(expectedTextForProxy, httpRequest.createProxyRequest());
}
+void HttpRequestTest::testUserHeaders()
+{
+ SharedHandle<Request> request(new Request());
+ request->setUrl("http://localhost/archives/aria2-1.0.0.tar.bz2");
+
+ HttpRequest httpRequest;
+ httpRequest.setRequest(request);
+ httpRequest.setUserHeaders("X-ARIA2: v0.13\nX-ARIA2-DISTRIBUTE: enabled\n");
+
+ std::string expectedText = "GET /archives/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
+ "User-Agent: aria2\r\n"
+ "Accept: */*\r\n"
+ "Host: localhost\r\n"
+ "Pragma: no-cache\r\n"
+ "Cache-Control: no-cache\r\n"
+ "Connection: close\r\n"
+ "X-ARIA2: v0.13\r\n"
+ "X-ARIA2-DISTRIBUTE: enabled\r\n"
+ "\r\n";
+
+ CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
+}
+
+
} // namespace aria2