diff options
Diffstat (limited to 'vendor/golang.org/x/net/http2/hpack/tables_test.go')
-rw-r--r-- | vendor/golang.org/x/net/http2/hpack/tables_test.go | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/vendor/golang.org/x/net/http2/hpack/tables_test.go b/vendor/golang.org/x/net/http2/hpack/tables_test.go index 7f40d9a42..d963f3635 100644 --- a/vendor/golang.org/x/net/http2/hpack/tables_test.go +++ b/vendor/golang.org/x/net/http2/hpack/tables_test.go @@ -89,6 +89,32 @@ func TestHeaderFieldTable(t *testing.T) { } } +func TestHeaderFieldTable_LookupMapEviction(t *testing.T) { + table := &headerFieldTable{} + table.init() + table.addEntry(pair("key1", "value1-1")) + table.addEntry(pair("key2", "value2-1")) + table.addEntry(pair("key1", "value1-2")) + table.addEntry(pair("key3", "value3-1")) + table.addEntry(pair("key4", "value4-1")) + table.addEntry(pair("key2", "value2-2")) + + // evict all pairs + table.evictOldest(table.len()) + + if l := table.len(); l > 0 { + t.Errorf("table.len() = %d, want 0", l) + } + + if l := len(table.byName); l > 0 { + t.Errorf("len(table.byName) = %d, want 0", l) + } + + if l := len(table.byNameValue); l > 0 { + t.Errorf("len(table.byNameValue) = %d, want 0", l) + } +} + func TestStaticTable(t *testing.T) { fromSpec := ` +-------+-----------------------------+---------------+ |