#include "quiche/quic/core/quic_write_blocked_list.h"
#include <optional>
#include <tuple>
#include "quiche/quic/platform/api/quic_test.h"
#include "quiche/quic/test_tools/quic_test_utils.h"
#include "quiche/common/platform/api/quiche_expect_bug.h"
kV3HighestPriority;
kV3LowestPriority;
namespace quic {
namespace test {
namespace {
constexpr bool kStatic = …;
constexpr bool kNotStatic = …;
constexpr bool kIncremental = …;
constexpr bool kNotIncremental = …;
class QuicWriteBlockedListTest : public QuicTest { … };
TEST_F(QuicWriteBlockedListTest, PriorityOrder) { … }
TEST_F(QuicWriteBlockedListTest, SingleStaticStream) { … }
TEST_F(QuicWriteBlockedListTest, StaticStreamsComeFirst) { … }
TEST_F(QuicWriteBlockedListTest, NoDuplicateEntries) { … }
TEST_F(QuicWriteBlockedListTest, IncrementalStreamsRoundRobin) { … }
class QuicWriteBlockedListParameterizedTest
: public QuicWriteBlockedListTest,
public ::testing::WithParamInterface<std::tuple<bool, bool>> { … };
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(QuicWriteBlockedListParameterizedTest, BatchingWrites) { … }
TEST_P(QuicWriteBlockedListParameterizedTest, RoundRobin) { … }
TEST_P(QuicWriteBlockedListParameterizedTest,
NonIncrementalStreamsKeepWriting) { … }
TEST_P(QuicWriteBlockedListParameterizedTest,
IncrementalAndNonIncrementalStreams) { … }
TEST_F(QuicWriteBlockedListTest, Ceding) { … }
TEST_F(QuicWriteBlockedListTest, UnregisterStream) { … }
TEST_F(QuicWriteBlockedListTest, UnregisterNotRegisteredStream) { … }
TEST_F(QuicWriteBlockedListTest, UpdateStreamPriority) { … }
TEST_F(QuicWriteBlockedListTest, UpdateStaticStreamPriority) { … }
TEST_F(QuicWriteBlockedListTest, UpdateStreamPrioritySameUrgency) { … }
}
}
}