79 lines
2.7 KiB
C++
79 lines
2.7 KiB
C++
// Copyright 2018 The Chromium Authors
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#include "net/quic/set_quic_flag.h"
|
|
|
|
#include "net/third_party/quiche/src/quiche/quic/platform/api/quic_flags.h"
|
|
#include "testing/gtest/include/gtest/gtest.h"
|
|
|
|
namespace net::test {
|
|
|
|
TEST(SetQuicFlagTest, Bool) {
|
|
FLAGS_quic_enforce_single_packet_chlo = true;
|
|
SetQuicFlagByName("FLAGS_quic_enforce_single_packet_chlo", "false");
|
|
EXPECT_FALSE(FLAGS_quic_enforce_single_packet_chlo);
|
|
SetQuicFlagByName("FLAGS_quic_enforce_single_packet_chlo", "true");
|
|
EXPECT_TRUE(FLAGS_quic_enforce_single_packet_chlo);
|
|
SetQuicFlagByName("FLAGS_quic_enforce_single_packet_chlo", "False");
|
|
EXPECT_FALSE(FLAGS_quic_enforce_single_packet_chlo);
|
|
SetQuicFlagByName("FLAGS_quic_enforce_single_packet_chlo", "True");
|
|
EXPECT_TRUE(FLAGS_quic_enforce_single_packet_chlo);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Double) {
|
|
FLAGS_quic_bbr_cwnd_gain = 3.0;
|
|
SetQuicFlagByName("FLAGS_quic_bbr_cwnd_gain", "1.5");
|
|
EXPECT_EQ(1.5, FLAGS_quic_bbr_cwnd_gain);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, DoubleInvalid) {
|
|
FLAGS_quic_bbr_cwnd_gain = 3.0;
|
|
SetQuicFlagByName("FLAGS_quic_bbr_cwnd_gain", "true");
|
|
EXPECT_EQ(3.0, FLAGS_quic_bbr_cwnd_gain);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Int64) {
|
|
FLAGS_quic_max_tracked_packet_count = 100;
|
|
SetQuicFlagByName("FLAGS_quic_max_tracked_packet_count", "5");
|
|
EXPECT_EQ(5, FLAGS_quic_max_tracked_packet_count);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Int64Invalid) {
|
|
FLAGS_quic_max_tracked_packet_count = 100;
|
|
SetQuicFlagByName("FLAGS_quic_max_tracked_packet_count", "false");
|
|
EXPECT_EQ(100, FLAGS_quic_max_tracked_packet_count);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Uint64) {
|
|
FLAGS_quic_key_update_confidentiality_limit = 100;
|
|
SetQuicFlagByName("FLAGS_quic_key_update_confidentiality_limit", "5");
|
|
EXPECT_EQ(5u, FLAGS_quic_key_update_confidentiality_limit);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Uint64Invalid) {
|
|
FLAGS_quic_key_update_confidentiality_limit = 100;
|
|
SetQuicFlagByName("FLAGS_quic_key_update_confidentiality_limit", "false");
|
|
EXPECT_EQ(100u, FLAGS_quic_key_update_confidentiality_limit);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Uint64Negative) {
|
|
FLAGS_quic_key_update_confidentiality_limit = 4096;
|
|
SetQuicFlagByName("FLAGS_quic_key_update_confidentiality_limit", "-1");
|
|
EXPECT_EQ(4096u, FLAGS_quic_key_update_confidentiality_limit);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Int32) {
|
|
FLAGS_quic_lumpy_pacing_size = 1;
|
|
SetQuicFlagByName("FLAGS_quic_lumpy_pacing_size", "10");
|
|
EXPECT_EQ(10, FLAGS_quic_lumpy_pacing_size);
|
|
}
|
|
|
|
TEST(SetQuicFlagTest, Int32Invalid) {
|
|
FLAGS_quic_lumpy_pacing_size = 1;
|
|
SetQuicFlagByName("FLAGS_quic_lumpy_pacing_size", "false");
|
|
EXPECT_EQ(1, FLAGS_quic_lumpy_pacing_size);
|
|
}
|
|
|
|
} // namespace net::test
|