summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstoyan@chromium.org <stoyan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-19 15:23:11 +0000
committerstoyan@chromium.org <stoyan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-19 15:23:11 +0000
commit5d6e8b1819be4fb855af53fbe08f1bececa27aab (patch)
tree8caf894381004e6ede91cd5ce11abcf4a5f3acbc
parent5a585d4a59610e380b481f5f7fac850919c49816 (diff)
downloadchromium_src-5d6e8b1819be4fb855af53fbe08f1bececa27aab.zip
chromium_src-5d6e8b1819be4fb855af53fbe08f1bececa27aab.tar.gz
chromium_src-5d6e8b1819be4fb855af53fbe08f1bececa27aab.tar.bz2
Simple initial test for AppendCFUserAgentString.
Review URL: http://codereview.chromium.org/2825053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52907 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome_frame/test/http_negotiate_unittest.cc31
1 files changed, 31 insertions, 0 deletions
diff --git a/chrome_frame/test/http_negotiate_unittest.cc b/chrome_frame/test/http_negotiate_unittest.cc
index b203f61..68aa113 100644
--- a/chrome_frame/test/http_negotiate_unittest.cc
+++ b/chrome_frame/test/http_negotiate_unittest.cc
@@ -273,3 +273,34 @@ TEST_F(HttpNegotiateTest, ReportProgress) {
}
}
+using testing::AllOf;
+using testing::ContainsRegex;
+using testing::HasSubstr;
+
+TEST(AppendUserAgent, Append) {
+ EXPECT_THAT(AppendCFUserAgentString(NULL, NULL),
+ testing::ContainsRegex("User-Agent:.+chromeframe.+\r\n"));
+
+ // Check Http headers are reasonably parsed.
+ EXPECT_THAT(AppendCFUserAgentString(L"Bad User-Agent: Age Tuners;\r\n", NULL),
+ AllOf(ContainsRegex("User-Agent:.+chromeframe.+\r\n"),
+ testing::Not(testing::HasSubstr("Age Tuners"))));
+
+ // Honor headers User-Agent, if additional headers does not specify one.
+ EXPECT_THAT(AppendCFUserAgentString(L"User-Agent: A Tense Rug;\r\n", NULL),
+ ContainsRegex("User-Agent: A Tense Rug; chromeframe.+\r\n"));
+
+ // Honor additional headers User-Agent.
+ EXPECT_THAT(AppendCFUserAgentString(L"User-Agent: Near Guest;\r\n",
+ L"User-Agent: Rat see Gun;\r\n"),
+ ContainsRegex("User-Agent: Rat see Gun; chromeframe.+\r\n"));
+
+ // Check additional headers are preserved.
+ EXPECT_THAT(AppendCFUserAgentString(NULL,
+ L"Authorization: A Zoo That I Ruin\r\n"
+ L"User-Agent: Get a Nurse;\r\n"
+ L"Accept-Language: Cleanup a Cat Egg\r\n"),
+ AllOf(ContainsRegex("User-Agent: Get a Nurse; chromeframe.+\r\n"),
+ HasSubstr("Authorization: A Zoo That I Ruin\r\n"),
+ HasSubstr("Accept-Language: Cleanup a Cat Egg\r\n")));
+}