@Test public void setMaxHeaderSizeShouldBeSuccessful() throws Http2Exception { encoder.headerTable().maxHeaderTableSize(10); Http2Headers in = headers(); assertRoundtripSuccessful(in); assertEquals(10, decoder.headerTable().maxHeaderTableSize()); }
@Test(expected = Http2Exception.class) public void testExceedHeaderSize() throws Exception { ByteBuf buf = encode(randomBytes(DEFAULT_MAX_HEADER_SIZE), randomBytes(1)); try { decoder.decodeHeaders(buf); fail(); } finally { buf.release(); } }
@Test public void decodeShouldSucceed() throws Exception { ByteBuf buf = encode(b(":method"), b("GET"), b("akey"), b("avalue"), randomBytes(), randomBytes()); try { Http2Headers headers = decoder.decodeHeaders(buf); assertEquals(3, headers.size()); assertEquals("GET", headers.method().toString()); assertEquals("avalue", headers.get(new AsciiString("akey")).toString()); } finally { buf.release(); } }
private void assertRoundtripSuccessful(Http2Headers in) throws Http2Exception { encoder.encodeHeaders(in, buffer); Http2Headers out = decoder.decodeHeaders(buffer); assertEquals(in, out); }