summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authortim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-24 21:31:54 +0000
committertim@chromium.org <tim@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-08-24 21:31:54 +0000
commit1d6928c7dd61a81f7d099f571f00c2b5a69e5723 (patch)
tree99767c19014f43554617bcf09754b538294b38f1 /chrome
parent1302ece5eab6d9fefbf274f33dd61797e8ab5f69 (diff)
downloadchromium_src-1d6928c7dd61a81f7d099f571f00c2b5a69e5723.zip
chromium_src-1d6928c7dd61a81f7d099f571f00c2b5a69e5723.tar.gz
chromium_src-1d6928c7dd61a81f7d099f571f00c2b5a69e5723.tar.bz2
In HttpBridgeTest, make sure to read the full HTTP response content and not
just up until the first null character. TEST=HttpBridgeTest Review URL: http://codereview.chromium.org/174291 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24150 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/sync/glue/http_bridge.cc2
-rw-r--r--chrome/browser/sync/glue/http_bridge_unittest.cc18
2 files changed, 7 insertions, 13 deletions
diff --git a/chrome/browser/sync/glue/http_bridge.cc b/chrome/browser/sync/glue/http_bridge.cc
index 719e89c..dbfb072 100644
--- a/chrome/browser/sync/glue/http_bridge.cc
+++ b/chrome/browser/sync/glue/http_bridge.cc
@@ -200,7 +200,7 @@ int HttpBridge::GetResponseContentLength() const {
const char* HttpBridge::GetResponseContent() const {
DCHECK_EQ(MessageLoop::current(), created_on_loop_);
DCHECK(request_completed_);
- return response_content_.c_str();
+ return response_content_.data();
}
int HttpBridge::GetResponseCookieCount() const {
diff --git a/chrome/browser/sync/glue/http_bridge_unittest.cc b/chrome/browser/sync/glue/http_bridge_unittest.cc
index 342bc7c..6b585f4 100644
--- a/chrome/browser/sync/glue/http_bridge_unittest.cc
+++ b/chrome/browser/sync/glue/http_bridge_unittest.cc
@@ -156,22 +156,15 @@ TEST_F(HttpBridgeTest, TestMakeSynchronousPostLiveComprehensive) {
EXPECT_EQ(200, response_code);
EXPECT_EQ(0, os_error);
EXPECT_EQ(0, http_bridge->GetResponseCookieCount());
- std::string response = http_bridge->GetResponseContent();
+ std::string response(http_bridge->GetResponseContent(),
+ http_bridge->GetResponseContentLength());
EXPECT_EQ(std::string::npos, response.find("Cookie:"));
- // TODO(chron): Renable this check and figure out why headers
- // aren't echoing right.
- // This is currently broken in header parsing from the echo
- // server for some reason.
- // EXPECT_NE(std::string::npos, response.find("User-Agent: bob"));
+ EXPECT_NE(std::string::npos, response.find("User-Agent: bob"));
EXPECT_NE(std::string::npos, response.find(test_payload.c_str()));
}
-// TODO(chron): Renable this check and figure out why headers
-// aren't echoing right.
-// Test over the wire whether our extra request headers come back.
-// Use default UA string and a test payload.
-TEST_F(HttpBridgeTest, DISABLED_TestExtraRequestHeaders) {
+TEST_F(HttpBridgeTest, TestExtraRequestHeaders) {
scoped_refptr<HTTPTestServer> server = HTTPTestServer::CreateServer(kDocRoot,
NULL);
ASSERT_TRUE(NULL != server.get());
@@ -193,7 +186,8 @@ TEST_F(HttpBridgeTest, DISABLED_TestExtraRequestHeaders) {
EXPECT_EQ(200, response_code);
EXPECT_EQ(0, os_error);
EXPECT_EQ(0, http_bridge->GetResponseCookieCount());
- std::string response = http_bridge->GetResponseContent();
+ std::string response(http_bridge->GetResponseContent(),
+ http_bridge->GetResponseContentLength());
EXPECT_NE(std::string::npos, response.find("fnord"));
EXPECT_NE(std::string::npos, response.find(test_payload.c_str()));