tree eb7c1a3ac01ef42db53869130ae5a5e022eced74
parent c258e4f87af03afddb99d4eb171d0489c9626305
author bnc <bnc@google.com> 1565802535 -0700
committer Copybara-Service <copybara-worker@google.com> 1565897467 -0700

Refactor QPACK roundtrip fuzzer.

Create EncodingEnpoint and DecodingEndpoint, encapsulate crashing delegates.
Change SplitHeaderList to return QuicHeaderList instead of SpdyHeaderBlock.
Create VerifyingDecoder and use it with QpackDecodedHeadersAccumulator for
decoding instead of previous DecodeHeaderBlock function with TestHeadersHandler.

This is largely a no-op refactor, except header blocks are not broken up into
fragments any more when fed into the decoder.  This of course mostly invalidates
the fuzzer corpus, which I'll regenerate after I'm done with the dynamic table
work.

Some of this CL feels clumpsy, like OnHeaderBlockStart(),
OnHeaderBlockFragment(), and OnHeaderBlockEnd() calls in succession, or calling
AddExpectedHeaderList() instead of passing expected_header_list directly in
OnHeaderBlockEnd().  This will all make sense with subsequent changes supporting
the dynamic table and async decoding.

gfe-relnote: n/a, test-only change.
PiperOrigin-RevId: 263373592
Change-Id: Ied24c806c85cfe09fd27f9da5f0a2f60357c8baf
