Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: net/spdy/spdy_http_utils_unittest.cc

Issue 1357953002: Replace the existing SpdyHeaderBlock typedef with a class. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add some includes. Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/spdy/spdy_http_utils.h" 5 #include "net/spdy/spdy_http_utils.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "net/http/http_request_info.h" 8 #include "net/http/http_request_info.h"
9 #include "net/spdy/spdy_framer.h" 9 #include "net/spdy/spdy_framer.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 29 matching lines...) Expand all
40 40
41 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestSPDY2) { 41 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestSPDY2) {
42 GURL url("https://www.google.com/index.html"); 42 GURL url("https://www.google.com/index.html");
43 HttpRequestInfo request; 43 HttpRequestInfo request;
44 request.method = "GET"; 44 request.method = "GET";
45 request.url = url; 45 request.url = url;
46 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 46 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
47 SpdyHeaderBlock headers; 47 SpdyHeaderBlock headers;
48 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY2, 48 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY2,
49 kDirect, &headers); 49 kDirect, &headers);
50 EXPECT_EQ("GET", headers["method"]); 50 EXPECT_EQ("GET", static_cast<StringPiece>(headers["method"]));
51 EXPECT_EQ("https", headers["scheme"]); 51 EXPECT_EQ("https", static_cast<StringPiece>(headers["scheme"]));
52 EXPECT_EQ("www.google.com", headers["host"]); 52 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers["host"]));
53 EXPECT_EQ("/index.html", headers["url"]); 53 EXPECT_EQ("/index.html", static_cast<StringPiece>(headers["url"]));
54 EXPECT_EQ("HTTP/1.1", headers["version"]); 54 EXPECT_EQ("HTTP/1.1", static_cast<StringPiece>(headers["version"]));
55 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 55 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
56 } 56 }
57 57
58 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestSPDY3) { 58 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestSPDY3) {
59 GURL url("https://www.google.com/index.html"); 59 GURL url("https://www.google.com/index.html");
60 HttpRequestInfo request; 60 HttpRequestInfo request;
61 request.method = "GET"; 61 request.method = "GET";
62 request.url = url; 62 request.url = url;
63 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 63 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
64 SpdyHeaderBlock headers; 64 SpdyHeaderBlock headers;
65 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY3, 65 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY3,
66 kDirect, &headers); 66 kDirect, &headers);
67 EXPECT_EQ("GET", headers[":method"]); 67 EXPECT_EQ("GET", static_cast<StringPiece>(headers[":method"]));
68 EXPECT_EQ("https", headers[":scheme"]); 68 EXPECT_EQ("https", static_cast<StringPiece>(headers[":scheme"]));
69 EXPECT_EQ("www.google.com", headers[":host"]); 69 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers[":host"]));
70 EXPECT_EQ("/index.html", headers[":path"]); 70 EXPECT_EQ("/index.html", static_cast<StringPiece>(headers[":path"]));
71 EXPECT_EQ("HTTP/1.1", headers[":version"]); 71 EXPECT_EQ("HTTP/1.1", static_cast<StringPiece>(headers[":version"]));
72 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 72 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
73 } 73 }
74 74
75 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestHTTP2) { 75 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestHTTP2) {
76 GURL url("https://www.google.com/index.html"); 76 GURL url("https://www.google.com/index.html");
77 HttpRequestInfo request; 77 HttpRequestInfo request;
78 request.method = "GET"; 78 request.method = "GET";
79 request.url = url; 79 request.url = url;
80 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 80 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
81 SpdyHeaderBlock headers; 81 SpdyHeaderBlock headers;
82 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, HTTP2, 82 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, HTTP2,
83 kDirect, &headers); 83 kDirect, &headers);
84 EXPECT_EQ("GET", headers[":method"]); 84 EXPECT_EQ("GET", static_cast<StringPiece>(headers[":method"]));
85 EXPECT_EQ("https", headers[":scheme"]); 85 EXPECT_EQ("https", static_cast<StringPiece>(headers[":scheme"]));
86 EXPECT_EQ("www.google.com", headers[":authority"]); 86 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers[":authority"]));
87 EXPECT_EQ("/index.html", headers[":path"]); 87 EXPECT_EQ("/index.html", static_cast<StringPiece>(headers[":path"]));
88 EXPECT_TRUE(headers.end() == headers.find(":version")); 88 EXPECT_TRUE(headers.end() == headers.find(":version"));
89 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 89 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
90 } 90 }
91 91
92 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestProxySPDY2) { 92 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestProxySPDY2) {
93 GURL url("https://www.google.com/index.html"); 93 GURL url("https://www.google.com/index.html");
94 HttpRequestInfo request; 94 HttpRequestInfo request;
95 request.method = "GET"; 95 request.method = "GET";
96 request.url = url; 96 request.url = url;
97 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 97 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
98 SpdyHeaderBlock headers; 98 SpdyHeaderBlock headers;
99 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY2, 99 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY2,
100 !kDirect, &headers); 100 !kDirect, &headers);
101 EXPECT_EQ("GET", headers["method"]); 101 EXPECT_EQ("GET", static_cast<StringPiece>(headers["method"]));
102 EXPECT_EQ("https", headers["scheme"]); 102 EXPECT_EQ("https", static_cast<StringPiece>(headers["scheme"]));
103 EXPECT_EQ("www.google.com", headers["host"]); 103 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers["host"]));
104 EXPECT_EQ("https://www.google.com/index.html", headers["url"]); 104 EXPECT_EQ("https://www.google.com/index.html",
105 EXPECT_EQ("HTTP/1.1", headers["version"]); 105 static_cast<StringPiece>(headers["url"]));
106 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 106 EXPECT_EQ("HTTP/1.1", static_cast<StringPiece>(headers["version"]));
107 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
107 } 108 }
108 109
109 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestProxySPDY3) { 110 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestProxySPDY3) {
110 GURL url("https://www.google.com/index.html"); 111 GURL url("https://www.google.com/index.html");
111 HttpRequestInfo request; 112 HttpRequestInfo request;
112 request.method = "GET"; 113 request.method = "GET";
113 request.url = url; 114 request.url = url;
114 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 115 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
115 SpdyHeaderBlock headers; 116 SpdyHeaderBlock headers;
116 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY3, 117 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY3,
117 !kDirect, &headers); 118 !kDirect, &headers);
118 EXPECT_EQ("GET", headers[":method"]); 119 EXPECT_EQ("GET", static_cast<StringPiece>(headers[":method"]));
119 EXPECT_EQ("https", headers[":scheme"]); 120 EXPECT_EQ("https", static_cast<StringPiece>(headers[":scheme"]));
120 EXPECT_EQ("www.google.com", headers[":host"]); 121 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers[":host"]));
121 EXPECT_EQ("/index.html", headers[":path"]); 122 EXPECT_EQ("/index.html", static_cast<StringPiece>(headers[":path"]));
122 EXPECT_EQ("HTTP/1.1", headers[":version"]); 123 EXPECT_EQ("HTTP/1.1", static_cast<StringPiece>(headers[":version"]));
123 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 124 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
124 } 125 }
125 126
126 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestProxyHTTP2) { 127 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestProxyHTTP2) {
127 GURL url("https://www.google.com/index.html"); 128 GURL url("https://www.google.com/index.html");
128 HttpRequestInfo request; 129 HttpRequestInfo request;
129 request.method = "GET"; 130 request.method = "GET";
130 request.url = url; 131 request.url = url;
131 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 132 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
132 SpdyHeaderBlock headers; 133 SpdyHeaderBlock headers;
133 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, HTTP2, 134 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, HTTP2,
134 !kDirect, &headers); 135 !kDirect, &headers);
135 EXPECT_EQ("GET", headers[":method"]); 136 EXPECT_EQ("GET", static_cast<StringPiece>(headers[":method"]));
136 EXPECT_EQ("https", headers[":scheme"]); 137 EXPECT_EQ("https", static_cast<StringPiece>(headers[":scheme"]));
137 EXPECT_EQ("www.google.com", headers[":authority"]); 138 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers[":authority"]));
138 EXPECT_EQ("/index.html", headers[":path"]); 139 EXPECT_EQ("/index.html", static_cast<StringPiece>(headers[":path"]));
139 EXPECT_TRUE(headers.end() == headers.find(":version")); 140 EXPECT_TRUE(headers.end() == headers.find(":version"));
140 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 141 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
141 } 142 }
142 143
143 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestConnectSPDY2) { 144 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestConnectSPDY2) {
144 GURL url("https://www.google.com/index.html"); 145 GURL url("https://www.google.com/index.html");
145 HttpRequestInfo request; 146 HttpRequestInfo request;
146 request.method = "CONNECT"; 147 request.method = "CONNECT";
147 request.url = url; 148 request.url = url;
148 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 149 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
149 SpdyHeaderBlock headers; 150 SpdyHeaderBlock headers;
150 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY2, 151 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY2,
151 kDirect, &headers); 152 kDirect, &headers);
152 EXPECT_EQ("CONNECT", headers["method"]); 153 EXPECT_EQ("CONNECT", static_cast<StringPiece>(headers["method"]));
153 EXPECT_TRUE(headers.end() == headers.find("scheme")); 154 EXPECT_TRUE(headers.end() == headers.find("scheme"));
154 EXPECT_EQ("www.google.com", headers["host"]); 155 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers["host"]));
155 EXPECT_EQ("www.google.com:443", headers["url"]); 156 EXPECT_EQ("www.google.com:443", static_cast<StringPiece>(headers["url"]));
156 EXPECT_EQ("HTTP/1.1", headers["version"]); 157 EXPECT_EQ("HTTP/1.1", static_cast<StringPiece>(headers["version"]));
157 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 158 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
158 } 159 }
159 160
160 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestConnectSPDY3) { 161 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestConnectSPDY3) {
161 GURL url("https://www.google.com/index.html"); 162 GURL url("https://www.google.com/index.html");
162 HttpRequestInfo request; 163 HttpRequestInfo request;
163 request.method = "CONNECT"; 164 request.method = "CONNECT";
164 request.url = url; 165 request.url = url;
165 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 166 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
166 SpdyHeaderBlock headers; 167 SpdyHeaderBlock headers;
167 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY3, 168 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, SPDY3,
168 kDirect, &headers); 169 kDirect, &headers);
169 EXPECT_EQ("CONNECT", headers[":method"]); 170 EXPECT_EQ("CONNECT", static_cast<StringPiece>(headers[":method"]));
170 EXPECT_TRUE(headers.end() == headers.find(":scheme")); 171 EXPECT_TRUE(headers.end() == headers.find(":scheme"));
171 EXPECT_EQ("www.google.com", headers[":host"]); 172 EXPECT_EQ("www.google.com", static_cast<StringPiece>(headers[":host"]));
172 EXPECT_EQ("www.google.com:443", headers[":path"]); 173 EXPECT_EQ("www.google.com:443", static_cast<StringPiece>(headers[":path"]));
173 EXPECT_EQ("HTTP/1.1", headers[":version"]); 174 EXPECT_EQ("HTTP/1.1", static_cast<StringPiece>(headers[":version"]));
174 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 175 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
175 } 176 }
176 177
177 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestConnectHTTP2) { 178 TEST(SpdyHttpUtilsTest, CreateSpdyHeadersFromHttpRequestConnectHTTP2) {
178 GURL url("https://www.google.com/index.html"); 179 GURL url("https://www.google.com/index.html");
179 HttpRequestInfo request; 180 HttpRequestInfo request;
180 request.method = "CONNECT"; 181 request.method = "CONNECT";
181 request.url = url; 182 request.url = url;
182 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1"); 183 request.extra_headers.SetHeader(HttpRequestHeaders::kUserAgent, "Chrome/1.1");
183 SpdyHeaderBlock headers; 184 SpdyHeaderBlock headers;
184 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, HTTP2, 185 CreateSpdyHeadersFromHttpRequest(request, request.extra_headers, HTTP2,
185 kDirect, &headers); 186 kDirect, &headers);
186 EXPECT_EQ("CONNECT", headers[":method"]); 187 EXPECT_EQ("CONNECT", static_cast<StringPiece>(headers[":method"]));
187 EXPECT_TRUE(headers.end() == headers.find(":scheme")); 188 EXPECT_TRUE(headers.end() == headers.find(":scheme"));
188 EXPECT_EQ("www.google.com:443", headers[":authority"]); 189 EXPECT_EQ("www.google.com:443",
189 EXPECT_EQ(0u, headers.count(":path")); 190 static_cast<StringPiece>(headers[":authority"]));
190 EXPECT_EQ(0u, headers.count(":scheme")); 191 EXPECT_EQ(headers.end(), headers.find(":path"));
192 EXPECT_EQ(headers.end(), headers.find(":scheme"));
191 EXPECT_TRUE(headers.end() == headers.find(":version")); 193 EXPECT_TRUE(headers.end() == headers.find(":version"));
192 EXPECT_EQ("Chrome/1.1", headers["user-agent"]); 194 EXPECT_EQ("Chrome/1.1", static_cast<StringPiece>(headers["user-agent"]));
193 } 195 }
194 196
195 } // namespace net 197 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698