#include "quiche/http2/test_tools/random_decoder_test_base.h"
#include <stddef.h>
#include <functional>
#include <ios>
#include <set>
#include <type_traits>
#include "quiche/http2/decoder/decode_buffer.h"
#include "quiche/http2/decoder/decode_status.h"
#include "quiche/http2/test_tools/http2_random.h"
#include "quiche/common/platform/api/quiche_logging.h"
#include "quiche/common/platform/api/quiche_test.h"
#include "quiche/common/quiche_callbacks.h"
namespace http2 {
namespace test {
namespace {
const char kData[]{ … };
const bool kReturnNonZeroOnFirst = …;
const bool kMayReturnZeroOnFirst = …;
class RandomDecoderTestTest : public RandomDecoderTest { … };
TEST_F(RandomDecoderTestTest, StopOnStartPartiallyDone) { … }
TEST_F(RandomDecoderTestTest, StopOnResumePartiallyDone) { … }
TEST_F(RandomDecoderTestTest, InProgressWhenEmpty) { … }
TEST_F(RandomDecoderTestTest, DoneExactlyAtEnd) { … }
TEST_F(RandomDecoderTestTest, DecodeSeveralWaysToEnd) { … }
TEST_F(RandomDecoderTestTest, DecodeTwoWaysAndStopEarly) { … }
TEST_F(RandomDecoderTestTest, DecodeThreeWaysAndError) { … }
TEST(CorruptEnumTest, ManyValues) { … }
DecodeStatusUT;
struct CorruptEnumTestStruct { … };
TEST(CorruptEnumTest, CorruptsOnlyEnum) { … }
}
}
}