OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/metrics/field_trial.h" | 6 #include "base/metrics/field_trial.h" |
7 #include "base/test/mock_entropy_provider.h" | 7 #include "base/test/mock_entropy_provider.h" |
8 #include "chrome/browser/io_thread.h" | 8 #include "chrome/browser/io_thread.h" |
9 #include "chrome/common/chrome_switches.h" | 9 #include "chrome/common/chrome_switches.h" |
10 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_param
s.h" | 10 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_param
s.h" |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
73 } | 73 } |
74 | 74 |
75 base::CommandLine command_line_; | 75 base::CommandLine command_line_; |
76 IOThread::Globals globals_; | 76 IOThread::Globals globals_; |
77 std::string field_trial_group_; | 77 std::string field_trial_group_; |
78 bool is_quic_allowed_by_policy_; | 78 bool is_quic_allowed_by_policy_; |
79 std::map<std::string, std::string> field_trial_params_; | 79 std::map<std::string, std::string> field_trial_params_; |
80 }; | 80 }; |
81 | 81 |
82 TEST_F(IOThreadTest, InitializeNetworkSessionParamsFromGlobals) { | 82 TEST_F(IOThreadTest, InitializeNetworkSessionParamsFromGlobals) { |
83 globals_.quic_connection_options.push_back(net::kPACE); | |
84 globals_.quic_connection_options.push_back(net::kTBBR); | 83 globals_.quic_connection_options.push_back(net::kTBBR); |
85 globals_.quic_connection_options.push_back(net::kTIME); | 84 globals_.quic_connection_options.push_back(net::kTIME); |
86 | 85 |
87 net::HttpNetworkSession::Params params; | 86 net::HttpNetworkSession::Params params; |
88 InitializeNetworkSessionParams(¶ms); | 87 InitializeNetworkSessionParams(¶ms); |
89 EXPECT_EQ(globals_.quic_connection_options, | 88 EXPECT_EQ(globals_.quic_connection_options, |
90 params.quic_connection_options); | 89 params.quic_connection_options); |
91 } | 90 } |
92 | 91 |
93 TEST_F(IOThreadTest, SpdyFieldTrialHoldbackEnabled) { | 92 TEST_F(IOThreadTest, SpdyFieldTrialHoldbackEnabled) { |
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
213 command_line_.AppendSwitch("enable-quic"); | 212 command_line_.AppendSwitch("enable-quic"); |
214 | 213 |
215 ConfigureQuicGlobals(); | 214 ConfigureQuicGlobals(); |
216 net::HttpNetworkSession::Params params; | 215 net::HttpNetworkSession::Params params; |
217 InitializeNetworkSessionParams(¶ms); | 216 InitializeNetworkSessionParams(¶ms); |
218 EXPECT_TRUE(params.enable_quic); | 217 EXPECT_TRUE(params.enable_quic); |
219 EXPECT_TRUE(params.enable_quic_for_proxies); | 218 EXPECT_TRUE(params.enable_quic_for_proxies); |
220 EXPECT_FALSE(IOThread::ShouldEnableQuicForDataReductionProxy()); | 219 EXPECT_FALSE(IOThread::ShouldEnableQuicForDataReductionProxy()); |
221 } | 220 } |
222 | 221 |
223 TEST_F(IOThreadTest, EnablePacingFromCommandLine) { | |
224 command_line_.AppendSwitch("enable-quic"); | |
225 command_line_.AppendSwitch("enable-quic-pacing"); | |
226 | |
227 ConfigureQuicGlobals(); | |
228 net::HttpNetworkSession::Params params; | |
229 InitializeNetworkSessionParams(¶ms); | |
230 net::QuicTagVector options; | |
231 options.push_back(net::kPACE); | |
232 EXPECT_EQ(options, params.quic_connection_options); | |
233 } | |
234 TEST_F(IOThreadTest, DisableInsecureQuicFromFieldTrialParams) { | 222 TEST_F(IOThreadTest, DisableInsecureQuicFromFieldTrialParams) { |
235 field_trial_group_ = "Enabled"; | 223 field_trial_group_ = "Enabled"; |
236 field_trial_params_["disable_insecure_quic"] = "true"; | 224 field_trial_params_["disable_insecure_quic"] = "true"; |
237 | 225 |
238 ConfigureQuicGlobals(); | 226 ConfigureQuicGlobals(); |
239 net::HttpNetworkSession::Params params; | 227 net::HttpNetworkSession::Params params; |
240 InitializeNetworkSessionParams(¶ms); | 228 InitializeNetworkSessionParams(¶ms); |
241 EXPECT_TRUE(params.disable_insecure_quic); | 229 EXPECT_TRUE(params.disable_insecure_quic); |
242 } | 230 } |
243 | 231 |
244 TEST_F(IOThreadTest, EnablePacingFromFieldTrialParams) { | |
245 field_trial_group_ = "Enabled"; | |
246 field_trial_params_["enable_pacing"] = "true"; | |
247 | |
248 ConfigureQuicGlobals(); | |
249 net::HttpNetworkSession::Params params; | |
250 InitializeNetworkSessionParams(¶ms); | |
251 net::QuicTagVector options; | |
252 options.push_back(net::kPACE); | |
253 EXPECT_EQ(options, params.quic_connection_options); | |
254 } | |
255 | |
256 TEST_F(IOThreadTest, PacketLengthFromCommandLine) { | 232 TEST_F(IOThreadTest, PacketLengthFromCommandLine) { |
257 command_line_.AppendSwitch("enable-quic"); | 233 command_line_.AppendSwitch("enable-quic"); |
258 command_line_.AppendSwitchASCII("quic-max-packet-length", "1450"); | 234 command_line_.AppendSwitchASCII("quic-max-packet-length", "1450"); |
259 | 235 |
260 ConfigureQuicGlobals(); | 236 ConfigureQuicGlobals(); |
261 net::HttpNetworkSession::Params params; | 237 net::HttpNetworkSession::Params params; |
262 InitializeNetworkSessionParams(¶ms); | 238 InitializeNetworkSessionParams(¶ms); |
263 EXPECT_EQ(1450u, params.quic_max_packet_length); | 239 EXPECT_EQ(1450u, params.quic_max_packet_length); |
264 } | 240 } |
265 | 241 |
(...skipping 30 matching lines...) Expand all Loading... |
296 net::HttpNetworkSession::Params params; | 272 net::HttpNetworkSession::Params params; |
297 InitializeNetworkSessionParams(¶ms); | 273 InitializeNetworkSessionParams(¶ms); |
298 net::QuicVersionVector supported_versions; | 274 net::QuicVersionVector supported_versions; |
299 supported_versions.push_back(net::QuicSupportedVersions().back()); | 275 supported_versions.push_back(net::QuicSupportedVersions().back()); |
300 EXPECT_EQ(supported_versions, params.quic_supported_versions); | 276 EXPECT_EQ(supported_versions, params.quic_supported_versions); |
301 } | 277 } |
302 | 278 |
303 TEST_F(IOThreadTest, QuicConnectionOptionsFromCommandLine) { | 279 TEST_F(IOThreadTest, QuicConnectionOptionsFromCommandLine) { |
304 command_line_.AppendSwitch("enable-quic"); | 280 command_line_.AppendSwitch("enable-quic"); |
305 command_line_.AppendSwitchASCII("quic-connection-options", | 281 command_line_.AppendSwitchASCII("quic-connection-options", |
306 "PACE,TIME,TBBR,REJ"); | 282 "TIME,TBBR,REJ"); |
307 | 283 |
308 ConfigureQuicGlobals(); | 284 ConfigureQuicGlobals(); |
309 net::HttpNetworkSession::Params params; | 285 net::HttpNetworkSession::Params params; |
310 InitializeNetworkSessionParams(¶ms); | 286 InitializeNetworkSessionParams(¶ms); |
311 | 287 |
312 net::QuicTagVector options; | 288 net::QuicTagVector options; |
313 options.push_back(net::kPACE); | |
314 options.push_back(net::kTIME); | 289 options.push_back(net::kTIME); |
315 options.push_back(net::kTBBR); | 290 options.push_back(net::kTBBR); |
316 options.push_back(net::kREJ); | 291 options.push_back(net::kREJ); |
317 EXPECT_EQ(options, params.quic_connection_options); | 292 EXPECT_EQ(options, params.quic_connection_options); |
318 } | 293 } |
319 | 294 |
320 TEST_F(IOThreadTest, QuicConnectionOptionsFromFieldTrialParams) { | 295 TEST_F(IOThreadTest, QuicConnectionOptionsFromFieldTrialParams) { |
321 field_trial_group_ = "Enabled"; | 296 field_trial_group_ = "Enabled"; |
322 field_trial_params_["connection_options"] = "PACE,TIME,TBBR,REJ"; | 297 field_trial_params_["connection_options"] = "TIME,TBBR,REJ"; |
323 | 298 |
324 ConfigureQuicGlobals(); | 299 ConfigureQuicGlobals(); |
325 net::HttpNetworkSession::Params params; | 300 net::HttpNetworkSession::Params params; |
326 InitializeNetworkSessionParams(¶ms); | 301 InitializeNetworkSessionParams(¶ms); |
327 | 302 |
328 net::QuicTagVector options; | 303 net::QuicTagVector options; |
329 options.push_back(net::kPACE); | |
330 options.push_back(net::kTIME); | 304 options.push_back(net::kTIME); |
331 options.push_back(net::kTBBR); | 305 options.push_back(net::kTBBR); |
332 options.push_back(net::kREJ); | 306 options.push_back(net::kREJ); |
333 EXPECT_EQ(options, params.quic_connection_options); | 307 EXPECT_EQ(options, params.quic_connection_options); |
334 } | 308 } |
335 | 309 |
336 TEST_F(IOThreadTest, | 310 TEST_F(IOThreadTest, |
337 QuicAlwaysRequireHandshakeConfirmationFromFieldTrialParams) { | 311 QuicAlwaysRequireHandshakeConfirmationFromFieldTrialParams) { |
338 field_trial_group_ = "Enabled"; | 312 field_trial_group_ = "Enabled"; |
339 field_trial_params_["always_require_handshake_confirmation"] = "true"; | 313 field_trial_params_["always_require_handshake_confirmation"] = "true"; |
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
461 command_line_.AppendSwitch(switches::kEnableQuic); | 435 command_line_.AppendSwitch(switches::kEnableQuic); |
462 is_quic_allowed_by_policy_ = false; | 436 is_quic_allowed_by_policy_ = false; |
463 ConfigureQuicGlobals(); | 437 ConfigureQuicGlobals(); |
464 | 438 |
465 net::HttpNetworkSession::Params params; | 439 net::HttpNetworkSession::Params params; |
466 InitializeNetworkSessionParams(¶ms); | 440 InitializeNetworkSessionParams(¶ms); |
467 EXPECT_FALSE(params.enable_quic); | 441 EXPECT_FALSE(params.enable_quic); |
468 } | 442 } |
469 | 443 |
470 } // namespace test | 444 } // namespace test |
OLD | NEW |