#include "quiche/quic/core/congestion_control/bandwidth_sampler.h"
#include <algorithm>
#include <cstdint>
#include <set>
#include <string>
#include "quiche/quic/core/quic_bandwidth.h"
#include "quiche/quic/core/quic_time.h"
#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/platform/api/quic_flags.h"
#include "quiche/quic/platform/api/quic_logging.h"
#include "quiche/quic/platform/api/quic_test.h"
#include "quiche/quic/test_tools/mock_clock.h"
namespace quic {
namespace test {
class BandwidthSamplerPeer { … };
const QuicByteCount kRegularPacketSize = …;
static_assert …;
struct TestParameters { … };
std::string PrintToString(const TestParameters& p) { … }
class BandwidthSamplerTest : public QuicTestWithParam<TestParameters> { … };
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(BandwidthSamplerTest, SendAndWait) { … }
TEST_P(BandwidthSamplerTest, SendTimeState) { … }
TEST_P(BandwidthSamplerTest, SendPaced) { … }
TEST_P(BandwidthSamplerTest, SendWithLosses) { … }
TEST_P(BandwidthSamplerTest, NotCongestionControlled) { … }
TEST_P(BandwidthSamplerTest, CompressedAck) { … }
TEST_P(BandwidthSamplerTest, ReorderedAck) { … }
TEST_P(BandwidthSamplerTest, AppLimited) { … }
TEST_P(BandwidthSamplerTest, FirstRoundTrip) { … }
TEST_P(BandwidthSamplerTest, RemoveObsoletePackets) { … }
TEST_P(BandwidthSamplerTest, NeuterPacket) { … }
TEST_P(BandwidthSamplerTest, CongestionEventSampleDefaultValues) { … }
TEST_P(BandwidthSamplerTest, TwoAckedPacketsPerEvent) { … }
TEST_P(BandwidthSamplerTest, LoseEveryOtherPacket) { … }
TEST_P(BandwidthSamplerTest, AckHeightRespectBandwidthEstimateUpperBound) { … }
class MaxAckHeightTrackerTest : public QuicTest { … };
TEST_F(MaxAckHeightTrackerTest, VeryAggregatedLargeAck) { … }
TEST_F(MaxAckHeightTrackerTest, VeryAggregatedSmallAcks) { … }
TEST_F(MaxAckHeightTrackerTest, SomewhatAggregatedLargeAck) { … }
TEST_F(MaxAckHeightTrackerTest, SomewhatAggregatedSmallAcks) { … }
TEST_F(MaxAckHeightTrackerTest, NotAggregated) { … }
TEST_F(MaxAckHeightTrackerTest, StartNewEpochAfterAFullRound) { … }
}
}