summaryrefslogtreecommitdiff
path: root/test/HttpHeaderTest.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-04-08 19:00:07 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-04-08 19:00:07 +0900
commit1e0068e4d4ce79d10a2ea4f6462242bee3708dc8 (patch)
treed6c66da3c986b2b51455d0400b7a7033f75454ac /test/HttpHeaderTest.cc
parentc648ca0c5c328827327f0973ec4f8a06bacf912f (diff)
WebSocket: Check keyword string in comma separeted values in HTTP
header field.
Diffstat (limited to 'test/HttpHeaderTest.cc')
-rw-r--r--test/HttpHeaderTest.cc19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/HttpHeaderTest.cc b/test/HttpHeaderTest.cc
index 690f3818..f1add642 100644
--- a/test/HttpHeaderTest.cc
+++ b/test/HttpHeaderTest.cc
@@ -14,6 +14,7 @@ class HttpHeaderTest:public CppUnit::TestFixture {
CPPUNIT_TEST(testFindAll);
CPPUNIT_TEST(testClearField);
CPPUNIT_TEST(testFill);
+ CPPUNIT_TEST(testFieldContains);
CPPUNIT_TEST_SUITE_END();
public:
@@ -21,6 +22,7 @@ public:
void testFindAll();
void testClearField();
void testFill();
+ void testFieldContains();
};
@@ -175,4 +177,21 @@ void HttpHeaderTest::testFill()
h.findAll("duplicate")[1]);
}
+void HttpHeaderTest::testFieldContains()
+{
+ HttpHeader h;
+ h.put("connection", "Keep-Alive, Upgrade");
+ h.put("upgrade", "WebSocket");
+ h.put("sec-websocket-version", "13");
+ h.put("sec-websocket-version", "8, 7");
+ CPPUNIT_ASSERT(h.fieldContains("connection", "upgrade"));
+ CPPUNIT_ASSERT(h.fieldContains("connection", "keep-alive"));
+ CPPUNIT_ASSERT(!h.fieldContains("connection", "close"));
+ CPPUNIT_ASSERT(h.fieldContains("upgrade", "websocket"));
+ CPPUNIT_ASSERT(!h.fieldContains("upgrade", "spdy"));
+ CPPUNIT_ASSERT(h.fieldContains("sec-websocket-version", "13"));
+ CPPUNIT_ASSERT(h.fieldContains("sec-websocket-version", "8"));
+ CPPUNIT_ASSERT(!h.fieldContains("sec-websocket-version", "6"));
+}
+
} // namespace aria2