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

Unified Diff: net/tools/quic/end_to_end_test.cc

Issue 1418503022: Reduce the number of QUIC end-to-end test combinations that are from from 240 to 46, by looking at … (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@107067017
Patch Set: Created 5 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/tools/quic/end_to_end_test.cc
diff --git a/net/tools/quic/end_to_end_test.cc b/net/tools/quic/end_to_end_test.cc
index 5907cd08ccd35e84992a58dedad812585e90fa39..c6a0a91d7199b7336fe034d57d923bacb31cc642 100644
--- a/net/tools/quic/end_to_end_test.cc
+++ b/net/tools/quic/end_to_end_test.cc
@@ -147,30 +147,51 @@ vector<TestParams> GetTestParams() {
// to do 0-RTT across incompatible versions. Chromium only supports
// a single version at a time anyway. :)
QuicVersionVector all_supported_versions = QuicSupportedVersions();
- QuicVersionVector client_version_buckets[2];
+ QuicVersionVector version_buckets[2];
for (const QuicVersion version : all_supported_versions) {
if (version <= QUIC_VERSION_25) {
// SPDY/4
- client_version_buckets[0].push_back(version);
+ version_buckets[0].push_back(version);
} else {
// QUIC_VERSION_26 changes the kdf in a way that is incompatible with
// version negotiation across the version 26 boundary.
- client_version_buckets[1].push_back(version);
+ version_buckets[1].push_back(version);
}
}
vector<TestParams> params;
- // TODO(rtenneti): Add kTBBR after BBR code is checked in.
- // for (const QuicTag congestion_control_tag : {kRENO, kTBBR, kQBIC}) {
- for (const QuicTag congestion_control_tag : {kRENO, kQBIC}) {
- for (const bool use_fec : {false, true}) {
- for (const QuicVersionVector& client_versions : client_version_buckets) {
- // A number of end to end tests fail when stateless rejects are enabled
- // *and* there are more than two QUIC versions.
- for (bool client_supports_stateless_rejects : {true, false}) {
- for (bool server_uses_stateless_rejects_if_peer_supported :
- {true, false}) {
- for (bool auto_tune_flow_control_window : {true, false}) {
+ for (bool server_uses_stateless_rejects_if_peer_supported : {true, false}) {
+ for (bool client_supports_stateless_rejects : {true, false}) {
+ // TODO(rtenneti): Add kTBBR after BBR code is checked in.
+ for (const QuicTag congestion_control_tag : {kRENO, kQBIC}) {
+ for (bool auto_tune_flow_control_window : {true, false}) {
+ for (const bool use_fec : {false, true}) {
+ const int kMaxEnabledOptions = 5;
+ int enabled_options = 0;
+ if (congestion_control_tag != kQBIC) {
+ ++enabled_options;
+ }
+ if (use_fec) {
+ ++enabled_options;
+ }
+ if (auto_tune_flow_control_window) {
+ ++enabled_options;
+ }
+ if (client_supports_stateless_rejects) {
+ ++enabled_options;
+ }
+ if (server_uses_stateless_rejects_if_peer_supported) {
+ ++enabled_options;
+ }
+ CHECK_GE(kMaxEnabledOptions, enabled_options);
+
+ // Run tests with no options, a single option, or all the options
+ // enabled to avoid a combinatorial explosion.
+ if (enabled_options > 1 && enabled_options < kMaxEnabledOptions) {
+ continue;
+ }
+
+ for (const QuicVersionVector& client_versions : version_buckets) {
CHECK(!client_versions.empty());
// Add an entry for server and client supporting all versions.
params.push_back(TestParams(
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698