Commit 141ff564 authored by Matt Menke's avatar Matt Menke Committed by Commit Bot

Make sxg code use two argument ResponseHeader manipulation calls

We want to get rid of the single argument AddHeader() method as the two
argument AddHeader() and SetHeader() methods are safer and more flexible.

Bug: 1068194
Change-Id: I984a360ff6dfe0e27dc6d583d87ff5b848ff031c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2146935
Auto-Submit: Matt Menke <mmenke@chromium.org>
Reviewed-by: default avatarKinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#759097}
parent e37002dc
......@@ -841,8 +841,8 @@ IN_PROC_BROWSER_TEST_P(PrefetchBrowserTest, SignedExchangeWithPreload) {
MockSignedExchangeHandlerFactory factory({MockSignedExchangeHandlerParams(
target_sxg_url, SignedExchangeLoadResult::kSuccess, net::OK,
GURL(embedded_test_server()->GetURL(target_path)), "text/html",
{base::StringPrintf("Link: <%s>;rel=\"preload\";as=\"script\"",
preload_url_in_sxg.spec().c_str())},
{{"Link", base::StringPrintf("<%s>;rel=\"preload\";as=\"script\"",
preload_url_in_sxg.spec().c_str())}},
net::SHA256HashValue({{0x00}}))});
ScopedSignedExchangeHandlerFactory scoped_factory(&factory);
......@@ -917,8 +917,8 @@ IN_PROC_BROWSER_TEST_P(PrefetchBrowserTest,
target_sxg_url, SignedExchangeLoadResult::kSuccess, net::OK,
GURL(cross_origin_server_->GetURL("3p.example", target_path)),
"text/html",
{base::StringPrintf("Link: <%s>;rel=\"preload\";as=\"script\"",
preload_url_in_sxg.spec().c_str())},
{{"Link", base::StringPrintf("<%s>;rel=\"preload\";as=\"script\"",
preload_url_in_sxg.spec().c_str())}},
net::SHA256HashValue({{0x00}}))});
ScopedSignedExchangeHandlerFactory scoped_factory(&factory);
......
......@@ -20,7 +20,7 @@ MockSignedExchangeHandlerParams::MockSignedExchangeHandlerParams(
net::Error error,
const GURL& inner_url,
const std::string& mime_type,
std::vector<std::string> response_headers,
std::vector<std::pair<std::string, std::string>> response_headers,
base::Optional<net::SHA256HashValue> header_integrity,
const base::Time& signature_expire_time)
: outer_url(outer_url),
......@@ -50,10 +50,9 @@ MockSignedExchangeHandler::MockSignedExchangeHandler(
head->headers =
base::MakeRefCounted<net::HttpResponseHeaders>("HTTP/1.1 200 OK");
head->mime_type = params.mime_type;
head->headers->AddHeader(
base::StringPrintf("Content-type: %s", params.mime_type.c_str()));
head->headers->SetHeader("Content-type", params.mime_type);
for (const auto& header : params.response_headers)
head->headers->AddHeader(header);
head->headers->AddHeader(header.first, header.second);
head->is_signed_exchange_inner_response = true;
head->content_length = head->headers->GetContentLength();
}
......
......@@ -27,7 +27,7 @@ class MockSignedExchangeHandlerParams {
net::Error error,
const GURL& inner_url,
const std::string& mime_type,
std::vector<std::string> response_headers,
std::vector<std::pair<std::string, std::string>> response_headers,
base::Optional<net::SHA256HashValue> header_integrity,
const base::Time& signature_expire_time = base::Time());
MockSignedExchangeHandlerParams(const MockSignedExchangeHandlerParams& other);
......@@ -37,7 +37,7 @@ class MockSignedExchangeHandlerParams {
const net::Error error;
const GURL inner_url;
const std::string mime_type;
const std::vector<std::string> response_headers;
const std::vector<std::pair<std::string, std::string>> response_headers;
const base::Optional<net::SHA256HashValue> header_integrity;
const base::Time signature_expire_time;
};
......
......@@ -231,8 +231,8 @@ class SignedExchangeCertFetcherTest : public testing::Test {
auto response_head = network::mojom::URLResponseHead::New();
response_head->headers =
base::MakeRefCounted<net::HttpResponseHeaders>("HTTP/1.1 200 OK");
response_head->headers->AddHeader(
"Content-Type: application/cert-chain+cbor");
response_head->headers->SetHeader("Content-Type",
"application/cert-chain+cbor");
response_head->mime_type = "application/cert-chain+cbor";
mock_loader_factory_.client_remote()->OnReceiveResponse(
std::move(response_head));
......@@ -482,7 +482,7 @@ TEST_F(SignedExchangeCertFetcherTest, WrongMimeType) {
auto response_head = network::mojom::URLResponseHead::New();
response_head->headers =
base::MakeRefCounted<net::HttpResponseHeaders>("HTTP/1.1 200 OK");
response_head->headers->AddHeader("Content-Type: application/octet-stream");
response_head->headers->SetHeader("Content-Type", "application/octet-stream");
response_head->mime_type = "application/octet-stream";
mock_loader_factory_.client_remote()->OnReceiveResponse(
std::move(response_head));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment