diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-01-25 09:58:40 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-01-25 09:58:40 +0000 |
| commit | 0742e3921f185613f98c2b31cd03182d8aa1d6f5 (patch) | |
| tree | d658bfc69cb3cec3cf4cab9fb4ee89062bed9e24 /test/HttpHeaderProcessorTest.cc | |
| parent | 9505df51efaf83dd90818cb1c29487f286632f14 (diff) | |
2009-01-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added experimental built-in HTTP server. Currently, when a
client accesses to the server, it responds with the current
download progress. By default, it is disabled. To enable the
server, give --enable-http-server option. To change the default
port number for the server to listen to, use
--http-server-listen-port option.
The response HTML is very simple and refreshes it self each 1
second. Because of this refresh, you see flicker in normal web
browser such as Firefox. I recommend to use console-based
browser such as elinks, w3m. To connect to the server, run
'elinks http://localhost:6800/' while running aria2. Please
replace port number '6800'(which is default) with your
preference.
* src/DownloadEngineFactory.cc
* src/HttpHeader.cc
* src/HttpHeader.h
* src/HttpHeaderProcessor.cc
* src/HttpHeaderProcessor.h
* src/HttpListenCommand.cc
* src/HttpListenCommand.h
* src/HttpServer.cc
* src/HttpServer.h
* src/HttpServerCommand.cc
* src/HttpServerCommand.h
* src/HttpServerResponseCommand.cc
* src/HttpServerResponseCommand.h
* src/Makefile.am
* src/OptionHandlerFactory.cc
* src/Util.cc
* src/Util.h
* src/help_tags.h
* src/option_processing.cc
* src/prefs.cc
* src/prefs.h
* src/usage_text.h
* test/HttpHeaderProcessorTest.cc
* test/UtilTest.cc
Diffstat (limited to 'test/HttpHeaderProcessorTest.cc')
| -rw-r--r-- | test/HttpHeaderProcessorTest.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/HttpHeaderProcessorTest.cc b/test/HttpHeaderProcessorTest.cc index 91759ee4..3bd06dda 100644 --- a/test/HttpHeaderProcessorTest.cc +++ b/test/HttpHeaderProcessorTest.cc @@ -20,6 +20,7 @@ class HttpHeaderProcessorTest:public CppUnit::TestFixture { CPPUNIT_TEST(testGetHttpResponseHeader_insufficientStatusLength); CPPUNIT_TEST(testBeyondLimit); CPPUNIT_TEST(testGetHeaderString); + CPPUNIT_TEST(testGetHttpRequestHeader); CPPUNIT_TEST_SUITE_END(); public: @@ -201,4 +202,22 @@ void HttpHeaderProcessorTest::testGetHeaderString() proc.getHeaderString()); } +void HttpHeaderProcessorTest::testGetHttpRequestHeader() +{ + HttpHeaderProcessor proc; + std::string request = "GET /index.html HTTP/1.1\r\n" + "Host: host\r\n" + "Connection: close\r\n" + "\r\n"; + + proc.update(request); + + SharedHandle<HttpHeader> httpHeader = proc.getHttpRequestHeader(); + CPPUNIT_ASSERT(!httpHeader.isNull()); + CPPUNIT_ASSERT_EQUAL(std::string("GET"), httpHeader->getMethod()); + CPPUNIT_ASSERT_EQUAL(std::string("/index.html"),httpHeader->getRequestPath()); + CPPUNIT_ASSERT_EQUAL(std::string("HTTP/1.1"), httpHeader->getVersion()); + CPPUNIT_ASSERT_EQUAL(std::string("close"),httpHeader->getFirst("Connection")); +} + } // namespace aria2 |
