summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorklemens <ka7@github.com>2017-03-20 22:44:41 +0100
committerklemens <ka7@github.com>2017-03-20 22:44:41 +0100
commitec2ce4ffe5ca6af1a509dcd5a4d8bf0d5644401d (patch)
treef12046ea41550f0975721b6541095c5ceae21af4 /test
parentf0adbde2e6bd46eef13367dc564524c70c0c3916 (diff)
spelling fixes
Diffstat (limited to 'test')
-rw-r--r--test/GZipDecoder.cc2
-rw-r--r--test/HttpResponseTest.cc2
-rw-r--r--test/HttpResponseTest.cc.8905246
3 files changed, 248 insertions, 2 deletions
diff --git a/test/GZipDecoder.cc b/test/GZipDecoder.cc
index 80bac711..f7adaaf5 100644
--- a/test/GZipDecoder.cc
+++ b/test/GZipDecoder.cc
@@ -55,7 +55,7 @@ void GZipDecoder::init()
strm_->avail_in = 0;
strm_->next_in = Z_NULL;
- // initalize z_stream with gzip/zlib format auto detection enabled.
+ // initialize z_stream with gzip/zlib format auto detection enabled.
if (Z_OK != inflateInit2(strm_, 47)) {
throw DL_ABORT_EX("Initializing z_stream failed.");
}
diff --git a/test/HttpResponseTest.cc b/test/HttpResponseTest.cc
index ab1e5a8f..c1b4ef43 100644
--- a/test/HttpResponseTest.cc
+++ b/test/HttpResponseTest.cc
@@ -131,7 +131,7 @@ void HttpResponseTest::testGetContentType()
httpHeader->put(HttpHeader::CONTENT_TYPE,
"application/metalink+xml; charset=UTF-8");
httpResponse.setHttpHeader(std::move(httpHeader));
- // See paramter is ignored.
+ // See parameter is ignored.
CPPUNIT_ASSERT_EQUAL(std::string("application/metalink+xml"),
httpResponse.getContentType());
}
diff --git a/test/HttpResponseTest.cc.8905 b/test/HttpResponseTest.cc.8905
new file mode 100644
index 00000000..495cf4eb
--- /dev/null
+++ b/test/HttpResponseTest.cc.8905
@@ -0,0 +1,246 @@
+#include "HttpResponse.h"
+
+#include <iostream>
+
+#include <cppunit/extensions/HelperMacros.h>
+
+#include "TestUtil.h"
+#include "prefs.h"
+#include "PiecedSegment.h"
+#include "Piece.h"
+#include "Request.h"
+#include "HttpHeader.h"
+#include "HttpRequest.h"
+#include "Exception.h"
+#include "A2STR.h"
+#include "DlRetryEx.h"
+#include "CookieStorage.h"
+#include "AuthConfigFactory.h"
+#include "AuthConfig.h"
+#include "StreamFilter.h"
+#include "MetalinkHttpEntry.h"
+#include "Option.h"
+#include "Checksum.h"
+
+namespace aria2 {
+
+class HttpResponseTest : public CppUnit::TestFixture {
+
+ CPPUNIT_TEST_SUITE(HttpResponseTest);
+ CPPUNIT_TEST(testGetContentLength_null);
+ CPPUNIT_TEST(testGetContentLength_contentLength);
+ // CPPUNIT_TEST(testGetContentLength_range);
+ CPPUNIT_TEST(testGetEntityLength);
+ CPPUNIT_TEST(testGetContentType);
+ CPPUNIT_TEST(testDetermineFilename_without_ContentDisposition);
+ CPPUNIT_TEST(testDetermineFilename_with_ContentDisposition_zero_length);
+ CPPUNIT_TEST(testDetermineFilename_with_ContentDisposition);
+ CPPUNIT_TEST(testGetRedirectURI_without_Location);
+ CPPUNIT_TEST(testGetRedirectURI_with_Location);
+ CPPUNIT_TEST(testIsRedirect);
+ CPPUNIT_TEST(testIsTransferEncodingSpecified);
+ CPPUNIT_TEST(testGetTransferEncoding);
+ CPPUNIT_TEST(testGetTransferEncodingStreamFilter);
+ CPPUNIT_TEST(testIsContentEncodingSpecified);
+ CPPUNIT_TEST(testGetContentEncoding);
+ CPPUNIT_TEST(testGetContentEncodingStreamFilter);
+ CPPUNIT_TEST(testValidateResponse);
+ CPPUNIT_TEST(testValidateResponse_good_range);
+ CPPUNIT_TEST(testValidateResponse_bad_range);
+ CPPUNIT_TEST(testValidateResponse_chunked);
+ CPPUNIT_TEST(testValidateResponse_withIfModifiedSince);
+ CPPUNIT_TEST(testProcessRedirect);
+ CPPUNIT_TEST(testRetrieveCookie);
+ CPPUNIT_TEST(testSupportsPersistentConnection);
+ CPPUNIT_TEST(testGetMetalinKHttpEntries);
+ CPPUNIT_TEST(testGetDigest);
+ CPPUNIT_TEST_SUITE_END();
+
+private:
+public:
+ void setUp() {}
+
+ void testGetContentLength_null();
+ void testGetContentLength_contentLength();
+ void testGetEntityLength();
+ void testGetContentType();
+ void testDetermineFilename_without_ContentDisposition();
+ void testDetermineFilename_with_ContentDisposition_zero_length();
+ void testDetermineFilename_with_ContentDisposition();
+ void testGetRedirectURI_without_Location();
+ void testGetRedirectURI_with_Location();
+ void testIsRedirect();
+ void testIsTransferEncodingSpecified();
+ void testGetTransferEncoding();
+ void testGetTransferEncodingStreamFilter();
+ void testIsContentEncodingSpecified();
+ void testGetContentEncoding();
+ void testGetContentEncodingStreamFilter();
+ void testValidateResponse();
+ void testValidateResponse_good_range();
+ void testValidateResponse_bad_range();
+ void testValidateResponse_chunked();
+ void testValidateResponse_withIfModifiedSince();
+ void testProcessRedirect();
+ void testRetrieveCookie();
+ void testSupportsPersistentConnection();
+ void testGetMetalinKHttpEntries();
+ void testGetDigest();
+};
+
+CPPUNIT_TEST_SUITE_REGISTRATION(HttpResponseTest);
+
+void HttpResponseTest::testGetContentLength_null()
+{
+ HttpResponse httpResponse;
+
+ CPPUNIT_ASSERT_EQUAL((int64_t)0LL, httpResponse.getContentLength());
+}
+
+void HttpResponseTest::testGetContentLength_contentLength()
+{
+ HttpResponse httpResponse;
+
+ auto httpHeader = make_unique<HttpHeader>();
+ httpHeader->put(HttpHeader::CONTENT_LENGTH, "4294967296");
+
+ httpResponse.setHttpHeader(std::move(httpHeader));
+
+ CPPUNIT_ASSERT_EQUAL((int64_t)4294967296LL, httpResponse.getContentLength());
+}
+
+void HttpResponseTest::testGetEntityLength()
+{
+ HttpResponse httpResponse;
+
+ auto httpHeader = make_unique<HttpHeader>();
+ httpHeader->put(HttpHeader::CONTENT_LENGTH, "4294967296");
+
+ httpResponse.setHttpHeader(std::move(httpHeader));
+ CPPUNIT_ASSERT_EQUAL((int64_t)4294967296LL, httpResponse.getEntityLength());
+
+ httpResponse.getHttpHeader()->put(HttpHeader::CONTENT_RANGE,
+ "bytes 1-4294967296/4294967297");
+ CPPUNIT_ASSERT_EQUAL((int64_t)4294967297LL, httpResponse.getEntityLength());
+}
+
+void HttpResponseTest::testGetContentType()
+{
+ HttpResponse httpResponse;
+ auto httpHeader = make_unique<HttpHeader>();
+ httpHeader->put(HttpHeader::CONTENT_TYPE,
+ "application/metalink+xml; charset=UTF-8");
+ httpResponse.setHttpHeader(std::move(httpHeader));
+ // See parameter is ignored.
+ CPPUNIT_ASSERT_EQUAL(std::string("application/metalink+xml"),
+ httpResponse.getContentType());
+}
+
+void HttpResponseTest::testDetermineFilename_without_ContentDisposition()
+{
+ HttpResponse httpResponse;
+ auto httpRequest = make_unique<HttpRequest>();
+ auto request = std::make_shared<Request>();
+ request->setUri("http://localhost/archives/aria2-1.0.0.tar.bz2");
+ httpRequest->setRequest(request);
+
+ httpResponse.setHttpHeader(make_unique<HttpHeader>());
+ httpResponse.setHttpRequest(std::move(httpRequest));
+
+ CPPUNIT_ASSERT_EQUAL(std::string("aria2-1.0.0.tar.bz2"),
+ httpResponse.determineFilename(false));
+}
+
+void HttpResponseTest::
+ testDetermineFilename_with_ContentDisposition_zero_length()
+{
+ HttpResponse httpResponse;
+ auto httpHeader = make_unique<HttpHeader>();
+ httpHeader->put(HttpHeader::CONTENT_DISPOSITION, "attachment; filename=\"\"");
+ auto httpRequest = make_unique<HttpRequest>();
+ auto request = std::make_shared<Request>();
+ request->setUri("http://localhost/archives/aria2-1.0.0.tar.bz2");
+ httpRequest->setRequest(request);
+
+ httpResponse.setHttpHeader(std::move(httpHeader));
+ httpResponse.setHttpRequest(std::move(httpRequest));
+
+ CPPUNIT_ASSERT_EQUAL(std::string("aria2-1.0.0.tar.bz2"),
+ httpResponse.determineFilename(false));
+}
+
+void HttpResponseTest::testDetermineFilename_with_ContentDisposition()
+{
+ HttpResponse httpResponse;
+ auto httpHeader = make_unique<HttpHeader>();
+ httpHeader->put(HttpHeader::CONTENT_DISPOSITION,
+ "attachment; filename=\"aria2-current.tar.bz2\"");
+ auto httpRequest = make_unique<HttpRequest>();
+ auto request = std::make_shared<Request>();
+ request->setUri("http://localhost/archives/aria2-1.0.0.tar.bz2");
+ httpRequest->setRequest(request);
+
+ httpResponse.setHttpHeader(std::move(httpHeader));
+ httpResponse.setHttpRequest(std::move(httpRequest));
+
+ CPPUNIT_ASSERT_EQUAL(std::string("aria2-current.tar.bz2"),
+ httpResponse.determineFilename(false));
+}
+
+void HttpResponseTest::testGetRedirectURI_without_Location()
+{
+ HttpResponse httpResponse;
+
+ httpResponse.setHttpHeader(make_unique<HttpHeader>());
+
+ CPPUNIT_ASSERT_EQUAL(std::string(""), httpResponse.getRedirectURI());
+}
+
+void HttpResponseTest::testGetRedirectURI_with_Location()
+{
+ HttpResponse httpResponse;
+ auto httpHeader = make_unique<HttpHeader>();
+ httpHeader->put(HttpHeader::LOCATION,
+ "http://localhost/download/aria2-1.0.0.tar.bz2");
+ httpResponse.setHttpHeader(std::move(httpHeader));
+
+ CPPUNIT_ASSERT_EQUAL(
+ std::string("http://localhost/download/aria2-1.0.0.tar.bz2"),
+ httpResponse.getRedirectURI());
+}
+
+void HttpResponseTest::testIsRedirect()
+{
+ HttpResponse httpResponse;
+ httpResponse.setHttpHeader(make_unique<HttpHeader>());
+
+ httpResponse.getHttpHeader()->setStatusCode(301);
+ CPPUNIT_ASSERT(!httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(200);
+ CPPUNIT_ASSERT(!httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->put(
+ HttpHeader::LOCATION, "http://localhost/download/aria2-1.0.0.tar.bz2");
+
+ CPPUNIT_ASSERT(!httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(300);
+ CPPUNIT_ASSERT(httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(301);
+ CPPUNIT_ASSERT(httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(302);
+ CPPUNIT_ASSERT(httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(303);
+ CPPUNIT_ASSERT(httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(304);
+ CPPUNIT_ASSERT(!httpResponse.isRedirect());
+
+ httpResponse.getHttpHeader()->setStatusCode(305);
+ CPPUNIT_ASSERT(!httpResponse.isRedirect());
+
+ httpResp \ No newline at end of file