Commit 6947e33
authored
test(http2/hpack): expand coverage for hpack.cpp (#1044)
* test(http2/hpack): add extra coverage suite for issue #1031
Adds tests/unit/hpack_extra_coverage_test.cpp closing remaining gaps after
hpack_test.cpp and hpack_coverage_test.cpp:
- Static table boundary entries (index 61, name-only lookup ordering,
mismatched-value fall-through)
- Dynamic table get() past entry_count, growing max_size without eviction,
full-match preference over name-only match
- Encoder static-name-mismatched-value path forcing literal-with-indexing
via static name reference
- Decoder happy paths for literal-without-indexing (0x00) new-name and
indexed-name forms, never-indexed (0x10) prefix, and multi-header blocks
- Multi-byte integer decoding under the 64-bit overflow threshold
- Huffman stub encoded_size and byte-for-byte round-trip contract lock
- Encoder/decoder pair convergence for static-only emissions and mixed
static/dynamic flows
Each decoder-path test builds wire bytes by hand against RFC 7541 §6 so
the decoder is the unit under test, not the encoder upstream of it.
* docs(changelog): note hpack extra coverage tests for #10311 parent c76aa72 commit 6947e33
4 files changed
Lines changed: 431 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| 43 | + | |
43 | 44 | | |
44 | 45 | | |
45 | 46 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
38 | 43 | | |
39 | 44 | | |
40 | 45 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4838 | 4838 | | |
4839 | 4839 | | |
4840 | 4840 | | |
| 4841 | + | |
| 4842 | + | |
| 4843 | + | |
| 4844 | + | |
| 4845 | + | |
| 4846 | + | |
4841 | 4847 | | |
4842 | 4848 | | |
4843 | 4849 | | |
| |||
0 commit comments