summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-09-01 13:46:03 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-09-01 13:46:03 +0000
commit398d53f5f5073d6bc7d4ac788ea202281f766524 (patch)
treec28aed260915c3a06d0ec90912888bcff769b4d5 /test
parentf670cdbba906c0d7a014e7d86026cb408b7eda30 (diff)
2008-09-01 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Use CookieStorage class instead of CookieBox class. Now CookieStorage accepts cookies from numeric host such as 192.168.1.1. * src/AbstractProxyRequestCommand.cc * src/CookieStorage.cc * src/DownloadEngine.cc * src/DownloadEngine.h * src/HttpConnection.cc * src/HttpConnection.h * src/HttpRequest.cc * src/HttpRequest.h * src/HttpRequestCommand.cc * src/HttpResponse.cc * src/HttpResponseCommand.cc * src/HttpSkipResponseCommand.cc * src/Makefile.am * src/MultiUrlRequestInfo.cc * src/Request.cc * src/Request.h * src/main.cc * test/AllTest.cc * test/CookieStorageTest.cc * test/CookieTest.cc * test/HttpRequestTest.cc * test/HttpResponseTest.cc * test/Makefile.am * test/NsCookieParserTest.cc * test/Sqlite3MozCookieParserTest.cc * test/nscookietest.txt
Diffstat (limited to 'test')
-rw-r--r--test/AllTest.cc10
-rw-r--r--test/CookieStorageTest.cc18
-rw-r--r--test/CookieTest.cc9
-rw-r--r--test/HttpRequestTest.cc31
-rw-r--r--test/HttpResponseTest.cc32
-rw-r--r--test/Makefile.am2
-rw-r--r--test/Makefile.in51
-rw-r--r--test/NsCookieParserTest.cc13
-rw-r--r--test/Sqlite3MozCookieParserTest.cc2
-rw-r--r--test/nscookietest.txt1
10 files changed, 112 insertions, 57 deletions
diff --git a/test/AllTest.cc b/test/AllTest.cc
index a457673a..9fb27e0d 100644
--- a/test/AllTest.cc
+++ b/test/AllTest.cc
@@ -1,13 +1,9 @@
#include "Platform.h"
-#include "CookieBoxFactory.h"
#include <iostream>
#include <cppunit/CompilerOutputter.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
#include <cppunit/ui/text/TestRunner.h>
-using aria2::SharedHandle;
-using aria2::SingletonHolder;
-
int main(int argc, char* argv[]) {
aria2::Platform platform;
@@ -22,12 +18,6 @@ int main(int argc, char* argv[]) {
runner.addTest(suite);
runner.setOutputter(new CppUnit::CompilerOutputter(&runner.result(), std::cerr));
-
- // setup
-
- SharedHandle<aria2::CookieBoxFactory> cookieBoxFactory
- (new aria2::CookieBoxFactory());
- SingletonHolder<SharedHandle<aria2::CookieBoxFactory> >::instance(cookieBoxFactory);
// Run the tests.
bool successfull = runner.run();
diff --git a/test/CookieStorageTest.cc b/test/CookieStorageTest.cc
index 604efecd..3b4cef4a 100644
--- a/test/CookieStorageTest.cc
+++ b/test/CookieStorageTest.cc
@@ -65,6 +65,11 @@ void CookieStorageTest::testStore()
CPPUNIT_ASSERT(!st.store(badCookie));
CPPUNIT_ASSERT_EQUAL((size_t)1, st.size());
CPPUNIT_ASSERT(std::find(st.begin(), st.end(), anotherCookie) != st.end());
+
+ Cookie fromNumericHost("k", "v", "/", "192.168.1.1", false);
+ CPPUNIT_ASSERT(st.store(fromNumericHost));
+ CPPUNIT_ASSERT_EQUAL((size_t)2, st.size());
+ CPPUNIT_ASSERT(std::find(st.begin(), st.end(), fromNumericHost) != st.end());
}
void CookieStorageTest::testParseAndStore()
@@ -81,6 +86,11 @@ void CookieStorageTest::testParseAndStore()
CPPUNIT_ASSERT(!st.parseAndStore(localhostCookieStr,
"127.0.0.1", "/downloads"));
+
+ std::string numericHostCookieStr = "k=v;"
+ " expires=Fri, 2038-01-01 00:00:00 GMT; path=/; domain=192.168.1.1;";
+ CPPUNIT_ASSERT(st.parseAndStore(numericHostCookieStr, "192.168.1.1", "/"));
+
}
void CookieStorageTest::testCriteriaFind()
@@ -94,12 +104,15 @@ void CookieStorageTest::testCriteriaFind()
Cookie delta("delta", "DELTA", "/foo/bar", ".aria2.org", false);
Cookie echo("echo", "ECHO", "/", "www.aria2.org", false);
Cookie foxtrot("foxtrot", "FOXTROT", "/", ".sf.net", false);
+ Cookie golf("golf", "GOLF", "/", "192.168.1.1", false);
+
CPPUNIT_ASSERT(st.store(alpha));
CPPUNIT_ASSERT(st.store(bravo));
CPPUNIT_ASSERT(st.store(charlie));
CPPUNIT_ASSERT(st.store(delta));
CPPUNIT_ASSERT(st.store(echo));
CPPUNIT_ASSERT(st.store(foxtrot));
+ CPPUNIT_ASSERT(st.store(golf));
std::deque<Cookie> aria2Slash = st.criteriaFind("www.aria2.org", "/",
0, false);
@@ -130,6 +143,11 @@ void CookieStorageTest::testCriteriaFind()
std::deque<Cookie> dlAria2 = st.criteriaFind("dl.aria2.org", "/", 0, false);
CPPUNIT_ASSERT_EQUAL((size_t)1, dlAria2.size());
CPPUNIT_ASSERT_EQUAL(std::string("alpha"), dlAria2[0].name);
+
+ std::deque<Cookie> numericHostCookies = st.criteriaFind("192.168.1.1", "/", 0,
+ false);
+ CPPUNIT_ASSERT_EQUAL((size_t)1, numericHostCookies.size());
+ CPPUNIT_ASSERT_EQUAL(std::string("golf"), numericHostCookies[0].name);
}
void CookieStorageTest::testLoad()
diff --git a/test/CookieTest.cc b/test/CookieTest.cc
index 0221ae05..f04a390b 100644
--- a/test/CookieTest.cc
+++ b/test/CookieTest.cc
@@ -85,6 +85,11 @@ void CookieTest::testValidate()
Cookie nameEmpty("", "v", "/", "localhost", false);
CPPUNIT_ASSERT(!nameEmpty.validate("localhost", "/"));
}
+ {
+ Cookie fromNumericHost("k", "v", "/", "192.168.1.1", false);
+ CPPUNIT_ASSERT(fromNumericHost.validate("192.168.1.1", "/"));
+ CPPUNIT_ASSERT(!fromNumericHost.validate("www.aria2.org", "/"));
+ }
}
void CookieTest::testOperatorEqual()
@@ -127,6 +132,10 @@ void CookieTest::testMatch()
CPPUNIT_ASSERT(expireTest.match("www.aria2.org", "/", 999, false));
CPPUNIT_ASSERT(!expireTest.match("www.aria2.org", "/", 1000, false));
CPPUNIT_ASSERT(!expireTest.match("www.aria2.org", "/", 1001, false));
+
+ Cookie fromNumericHost("k", "v", "/", "192.168.1.1", false);
+ CPPUNIT_ASSERT(fromNumericHost.match("192.168.1.1", "/", 0, false));
+ CPPUNIT_ASSERT(!fromNumericHost.match("www.aria2.org", "/", 0, false));
}
void CookieTest::testIsExpired()
diff --git a/test/HttpRequestTest.cc b/test/HttpRequestTest.cc
index 411fcde9..12491548 100644
--- a/test/HttpRequestTest.cc
+++ b/test/HttpRequestTest.cc
@@ -5,9 +5,9 @@
#include "Piece.h"
#include "Range.h"
#include "Request.h"
-#include "CookieBox.h"
#include "Option.h"
#include "array_fun.h"
+#include "CookieStorage.h"
#include <cppunit/extensions/HelperMacros.h>
namespace aria2 {
@@ -396,19 +396,21 @@ void HttpRequestTest::testCreateRequest_with_cookie()
Cookie cookie1("name1", "value1", "/archives", "localhost", false);
Cookie cookie2("name2", "value2", "/archives/download", "localhost", false);
- Cookie cookie3("name3", "value3", "/archives/download", "tt.localhost", false);
- Cookie cookie4("name4", "value4", "/archives/download", "tt.localhost", true);
+ Cookie cookie3("name3", "value3", "/archives/download", ".aria2.org", false);
+ Cookie cookie4("name4", "value4", "/archives/", ".aria2.org", true);
- request->cookieBox->add(cookie1);
- request->cookieBox->add(cookie2);
- request->cookieBox->add(cookie3);
- request->cookieBox->add(cookie4);
+ SharedHandle<CookieStorage> st(new CookieStorage());
+ CPPUNIT_ASSERT(st->store(cookie1));
+ CPPUNIT_ASSERT(st->store(cookie2));
+ CPPUNIT_ASSERT(st->store(cookie3));
+ CPPUNIT_ASSERT(st->store(cookie4));
HttpRequest httpRequest;
httpRequest.disableContentEncoding();
httpRequest.setRequest(request);
httpRequest.setSegment(segment);
+ httpRequest.setCookieStorage(st);
std::string expectedText = "GET /archives/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
"User-Agent: aria2\r\n"
@@ -431,35 +433,36 @@ void HttpRequestTest::testCreateRequest_with_cookie()
"Pragma: no-cache\r\n"
"Cache-Control: no-cache\r\n"
"Connection: close\r\n"
- "Cookie: name1=value1;name2=value2;\r\n"
+ "Cookie: name2=value2;name1=value1;\r\n"
"\r\n";
CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
- request->setUrl("http://tt.localhost/archives/download/aria2-1.0.0.tar.bz2");
+ request->setUrl("http://www.aria2.org/archives/download/aria2-1.0.0.tar.bz2");
expectedText = "GET /archives/download/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
"User-Agent: aria2\r\n"
"Accept: */*\r\n"
- "Host: tt.localhost\r\n"
+ "Host: www.aria2.org\r\n"
"Pragma: no-cache\r\n"
"Cache-Control: no-cache\r\n"
"Connection: close\r\n"
- "Cookie: name1=value1;name2=value2;name3=value3;\r\n"
+ "Cookie: name3=value3;\r\n"
"\r\n";
CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
- request->setUrl("https://tt.localhost/archives/download/aria2-1.0.0.tar.bz2");
+ request->setUrl("https://www.aria2.org/archives/download/"
+ "aria2-1.0.0.tar.bz2");
expectedText = "GET /archives/download/aria2-1.0.0.tar.bz2 HTTP/1.1\r\n"
"User-Agent: aria2\r\n"
"Accept: */*\r\n"
- "Host: tt.localhost\r\n"
+ "Host: www.aria2.org\r\n"
"Pragma: no-cache\r\n"
"Cache-Control: no-cache\r\n"
"Connection: close\r\n"
- "Cookie: name1=value1;name2=value2;name3=value3;name4=value4;\r\n"
+ "Cookie: name3=value3;name4=value4;\r\n"
"\r\n";
CPPUNIT_ASSERT_EQUAL(expectedText, httpRequest.createRequest());
diff --git a/test/HttpResponseTest.cc b/test/HttpResponseTest.cc
index 015ba2cd..496d8e37 100644
--- a/test/HttpResponseTest.cc
+++ b/test/HttpResponseTest.cc
@@ -9,6 +9,7 @@
#include "A2STR.h"
#include "Decoder.h"
#include "DlRetryEx.h"
+#include "CookieStorage.h"
#include <iostream>
#include <cppunit/extensions/HelperMacros.h>
@@ -40,6 +41,7 @@ class HttpResponseTest : public CppUnit::TestFixture {
CPPUNIT_TEST(testValidateResponse_chunked);
CPPUNIT_TEST(testHasRetryAfter);
CPPUNIT_TEST(testProcessRedirect);
+ CPPUNIT_TEST(testRetrieveCookie);
CPPUNIT_TEST_SUITE_END();
private:
@@ -69,6 +71,7 @@ public:
void testValidateResponse_chunked();
void testHasRetryAfter();
void testProcessRedirect();
+ void testRetrieveCookie();
};
@@ -454,4 +457,33 @@ void HttpResponseTest::testProcessRedirect()
}
}
+void HttpResponseTest::testRetrieveCookie()
+{
+ HttpResponse httpResponse;
+ SharedHandle<HttpHeader> httpHeader(new HttpHeader());
+ httpResponse.setHttpHeader(httpHeader);
+
+ SharedHandle<HttpRequest> httpRequest(new HttpRequest());
+ SharedHandle<Request> request(new Request());
+ request->setUrl("http://www.aria2.org/archives/aria2-1.0.0.tar.bz2");
+ httpRequest->setRequest(request);
+ SharedHandle<CookieStorage> st(new CookieStorage());
+ httpRequest->setCookieStorage(st);
+ httpResponse.setHttpRequest(httpRequest);
+
+ httpHeader->put("Set-Cookie", "k1=v1; expires=Sun, 2007-06-10 11:00:00 GMT;"
+ "path=/; domain=.aria2.org;");
+ httpHeader->put("Set-Cookie", "k2=v2; expires=Sun, 2038-01-01 00:00:00 GMT;"
+ "path=/; domain=.aria2.org;");
+ httpHeader->put("Set-Cookie", "k3=v3;");
+
+ httpResponse.retrieveCookie();
+
+ CPPUNIT_ASSERT_EQUAL((size_t)2, st->size());
+
+ std::deque<Cookie>::const_iterator citer = st->begin();
+ CPPUNIT_ASSERT_EQUAL(std::string("k2=v2"), (*(st->begin())).toString());
+ CPPUNIT_ASSERT_EQUAL(std::string("k3=v3"), (*(st->begin()+1)).toString());
+}
+
} // namespace aria2
diff --git a/test/Makefile.am b/test/Makefile.am
index 2d6b528f..e779f551 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -24,11 +24,9 @@ aria2c_SOURCES = AllTest.cc\
AlphaNumberDecoratorTest.cc\
UriListParserTest.cc\
HttpHeaderProcessorTest.cc\
- CookieBoxTest.cc\
RequestTest.cc\
CookieParserTest.cc\
HttpRequestTest.cc\
- CookieBoxFactoryTest.cc\
RequestGroupManTest.cc\
AuthConfigFactoryTest.cc\
NetrcAuthResolverTest.cc\
diff --git a/test/Makefile.in b/test/Makefile.in
index 279b31b2..391636ac 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -178,17 +178,17 @@ am__aria2c_SOURCES_DIST = AllTest.cc TestUtil.cc TestUtil.h \
SingleFileDownloadContextTest.cc RequestGroupTest.cc \
PStringBuildVisitorTest.cc ParameterizedStringParserTest.cc \
UtilTest.cc AlphaNumberDecoratorTest.cc UriListParserTest.cc \
- HttpHeaderProcessorTest.cc CookieBoxTest.cc RequestTest.cc \
- CookieParserTest.cc HttpRequestTest.cc CookieBoxFactoryTest.cc \
- RequestGroupManTest.cc AuthConfigFactoryTest.cc \
- NetrcAuthResolverTest.cc DefaultAuthResolverTest.cc \
- OptionHandlerTest.cc SegmentManTest.cc BitfieldManTest.cc \
- NetrcTest.cc SingletonHolderTest.cc HttpHeaderTest.cc \
- HttpResponseTest.cc SharedHandleTest.cc FileTest.cc \
- OptionTest.cc DefaultDiskWriterTest.cc FeatureConfigTest.cc \
- SpeedCalcTest.cc MultiDiskAdaptorTest.cc \
- MultiFileAllocationIteratorTest.cc FixedNumberRandomizer.h \
- ProtocolDetectorTest.cc StringFormatTest.cc ExceptionTest.cc \
+ HttpHeaderProcessorTest.cc RequestTest.cc CookieParserTest.cc \
+ HttpRequestTest.cc RequestGroupManTest.cc \
+ AuthConfigFactoryTest.cc NetrcAuthResolverTest.cc \
+ DefaultAuthResolverTest.cc OptionHandlerTest.cc \
+ SegmentManTest.cc BitfieldManTest.cc NetrcTest.cc \
+ SingletonHolderTest.cc HttpHeaderTest.cc HttpResponseTest.cc \
+ SharedHandleTest.cc FileTest.cc OptionTest.cc \
+ DefaultDiskWriterTest.cc FeatureConfigTest.cc SpeedCalcTest.cc \
+ MultiDiskAdaptorTest.cc MultiFileAllocationIteratorTest.cc \
+ FixedNumberRandomizer.h ProtocolDetectorTest.cc \
+ StringFormatTest.cc ExceptionTest.cc \
DownloadHandlerFactoryTest.cc ChunkedDecoderTest.cc \
SignatureTest.cc ServerStatManTest.cc \
ServerStatURISelectorTest.cc InOrderURISelectorTest.cc \
@@ -345,9 +345,8 @@ am_aria2c_OBJECTS = AllTest.$(OBJEXT) TestUtil.$(OBJEXT) \
RequestGroupTest.$(OBJEXT) PStringBuildVisitorTest.$(OBJEXT) \
ParameterizedStringParserTest.$(OBJEXT) UtilTest.$(OBJEXT) \
AlphaNumberDecoratorTest.$(OBJEXT) UriListParserTest.$(OBJEXT) \
- HttpHeaderProcessorTest.$(OBJEXT) CookieBoxTest.$(OBJEXT) \
- RequestTest.$(OBJEXT) CookieParserTest.$(OBJEXT) \
- HttpRequestTest.$(OBJEXT) CookieBoxFactoryTest.$(OBJEXT) \
+ HttpHeaderProcessorTest.$(OBJEXT) RequestTest.$(OBJEXT) \
+ CookieParserTest.$(OBJEXT) HttpRequestTest.$(OBJEXT) \
RequestGroupManTest.$(OBJEXT) AuthConfigFactoryTest.$(OBJEXT) \
NetrcAuthResolverTest.$(OBJEXT) \
DefaultAuthResolverTest.$(OBJEXT) OptionHandlerTest.$(OBJEXT) \
@@ -574,17 +573,17 @@ aria2c_SOURCES = AllTest.cc TestUtil.cc TestUtil.h SocketCoreTest.cc \
SingleFileDownloadContextTest.cc RequestGroupTest.cc \
PStringBuildVisitorTest.cc ParameterizedStringParserTest.cc \
UtilTest.cc AlphaNumberDecoratorTest.cc UriListParserTest.cc \
- HttpHeaderProcessorTest.cc CookieBoxTest.cc RequestTest.cc \
- CookieParserTest.cc HttpRequestTest.cc CookieBoxFactoryTest.cc \
- RequestGroupManTest.cc AuthConfigFactoryTest.cc \
- NetrcAuthResolverTest.cc DefaultAuthResolverTest.cc \
- OptionHandlerTest.cc SegmentManTest.cc BitfieldManTest.cc \
- NetrcTest.cc SingletonHolderTest.cc HttpHeaderTest.cc \
- HttpResponseTest.cc SharedHandleTest.cc FileTest.cc \
- OptionTest.cc DefaultDiskWriterTest.cc FeatureConfigTest.cc \
- SpeedCalcTest.cc MultiDiskAdaptorTest.cc \
- MultiFileAllocationIteratorTest.cc FixedNumberRandomizer.h \
- ProtocolDetectorTest.cc StringFormatTest.cc ExceptionTest.cc \
+ HttpHeaderProcessorTest.cc RequestTest.cc CookieParserTest.cc \
+ HttpRequestTest.cc RequestGroupManTest.cc \
+ AuthConfigFactoryTest.cc NetrcAuthResolverTest.cc \
+ DefaultAuthResolverTest.cc OptionHandlerTest.cc \
+ SegmentManTest.cc BitfieldManTest.cc NetrcTest.cc \
+ SingletonHolderTest.cc HttpHeaderTest.cc HttpResponseTest.cc \
+ SharedHandleTest.cc FileTest.cc OptionTest.cc \
+ DefaultDiskWriterTest.cc FeatureConfigTest.cc SpeedCalcTest.cc \
+ MultiDiskAdaptorTest.cc MultiFileAllocationIteratorTest.cc \
+ FixedNumberRandomizer.h ProtocolDetectorTest.cc \
+ StringFormatTest.cc ExceptionTest.cc \
DownloadHandlerFactoryTest.cc ChunkedDecoderTest.cc \
SignatureTest.cc ServerStatManTest.cc \
ServerStatURISelectorTest.cc InOrderURISelectorTest.cc \
@@ -710,8 +709,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/BtUnchokeMessageTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ByteArrayDiskWriterTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ChunkedDecoderTest.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieBoxFactoryTest.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieBoxTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieParserTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieStorageTest.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/CookieTest.Po@am__quote@
diff --git a/test/NsCookieParserTest.cc b/test/NsCookieParserTest.cc
index 1775bd05..9535a7c8 100644
--- a/test/NsCookieParserTest.cc
+++ b/test/NsCookieParserTest.cc
@@ -28,12 +28,12 @@ void NsCookieParserTest::testParse()
{
NsCookieParser parser;
std::deque<Cookie> cookies = parser.parse("nscookietest.txt");
- CPPUNIT_ASSERT_EQUAL((size_t)4, cookies.size());
+ CPPUNIT_ASSERT_EQUAL((size_t)5, cookies.size());
Cookie c = cookies[0];
CPPUNIT_ASSERT_EQUAL(std::string("JSESSIONID"), c.name);
CPPUNIT_ASSERT_EQUAL(std::string("123456789"), c.value);
- CPPUNIT_ASSERT_EQUAL((time_t)1181473200, c.expires);
+ CPPUNIT_ASSERT_EQUAL((time_t)2147483647, c.expires);
CPPUNIT_ASSERT_EQUAL(std::string("/"), c.path);
CPPUNIT_ASSERT_EQUAL(std::string("localhost"), c.domain);
@@ -42,7 +42,7 @@ void NsCookieParserTest::testParse()
CPPUNIT_ASSERT_EQUAL(std::string("me"), c.value);
CPPUNIT_ASSERT_EQUAL((time_t)1181473200, c.expires);
CPPUNIT_ASSERT_EQUAL(std::string("/"), c.path);
- CPPUNIT_ASSERT_EQUAL(std::string("localhost"), c.domain);
+ CPPUNIT_ASSERT_EQUAL(std::string("expired"), c.domain);
c = cookies[2];
CPPUNIT_ASSERT_EQUAL(std::string("passwd"), c.name);
@@ -52,6 +52,13 @@ void NsCookieParserTest::testParse()
CPPUNIT_ASSERT_EQUAL(std::string("localhost"), c.domain);
c = cookies[3];
+ CPPUNIT_ASSERT_EQUAL(std::string("TAX"), c.name);
+ CPPUNIT_ASSERT_EQUAL(std::string("1000"), c.value);
+ CPPUNIT_ASSERT_EQUAL((time_t)2147483647, c.expires);
+ CPPUNIT_ASSERT_EQUAL(std::string("/"), c.path);
+ CPPUNIT_ASSERT_EQUAL(std::string("overflow"), c.domain);
+
+ c = cookies[4];
CPPUNIT_ASSERT_EQUAL(std::string("novalue"), c.name);
CPPUNIT_ASSERT_EQUAL(std::string(""), c.value);
CPPUNIT_ASSERT_EQUAL((time_t)2147483647, c.expires);
diff --git a/test/Sqlite3MozCookieParserTest.cc b/test/Sqlite3MozCookieParserTest.cc
index 04ab51c2..a9717ca1 100644
--- a/test/Sqlite3MozCookieParserTest.cc
+++ b/test/Sqlite3MozCookieParserTest.cc
@@ -37,7 +37,7 @@ void Sqlite3MozCookieParserTest::testParse()
CPPUNIT_ASSERT_EQUAL(std::string("/"), localhost.path);
CPPUNIT_ASSERT_EQUAL(std::string("JSESSIONID"), localhost.name);
CPPUNIT_ASSERT_EQUAL(std::string("123456789"), localhost.value);
- CPPUNIT_ASSERT_EQUAL((time_t)1200000000, localhost.expires);
+ CPPUNIT_ASSERT_EQUAL((time_t)INT32_MAX, localhost.expires);
CPPUNIT_ASSERT_EQUAL(true, localhost.secure);
const Cookie& nullValue = cookies[1];
diff --git a/test/nscookietest.txt b/test/nscookietest.txt
index 7903a710..9114fe4d 100644
--- a/test/nscookietest.txt
+++ b/test/nscookietest.txt
@@ -4,5 +4,6 @@ localhost FALSE / TRUE 2147483647 JSESSIONID 123456789
expired FALSE / FALSE 1181473200 user me
localhost FALSE /cgi-bin FALSE 2147483647 passwd secret
+badformat
overflow FALSE / FALSE 9223372036854775807 TAX 1000
localhost FALSE / FALSE 2147483648 novalue