aspnetcore/test/Kestrel.Core.Tests
Cesar Blum Silveira 0fafd19ec9 Initial HTTP/2 support.
What works:

- HTTP/2 over TLS1.2 with ALPN
- Request and response flow
  - Headers are compressed and decompressed with HPACK
  - Request body can be read by streams (if present)
  - MVC template app with individual auth works fine
- PRIORITY frames are validated
- RST_STREAM frames are validated and abort streams
- SETTINGS frames are validated and ACKed
- PING frames are validated and ACKed
- GOAWAY frames stop connections
- WINDOW_UPDATE frames are validated
- CONTINUATION frames are sent for large header blocks

What doesn't work yet:

- Flow control in either direction
- It's not possible to encode a single header across more than one frame
  - Affects only a very large header (name and value combined ~16KB long)
- Request trailers
- Response trailers
- Limits and timeouts in `KestrelServerLimits` are not enforced on HTTP/2
- HPACK use is very limited on the send side
  - Literals are not Huffman-encoded
  - Common headers (e.g. "server: Kestrel") are never indexed
- Honoring client settings
- Some error checking is still missing (e.g. validating incoming frame size)
2017-08-16 10:04:44 -07:00
..
TestHelpers
AddressBinderTests.cs Initial bedrock refactoring (#1995) 2017-08-16 00:02:48 -07:00
AsciiDecoding.cs
ChunkWriterTests.cs
DateHeaderValueManagerTests.cs
FrameConnectionManagerTests.cs
FrameConnectionTests.cs Initial HTTP/2 support. 2017-08-16 10:04:44 -07:00
FrameHeadersTests.cs
FrameRequestHeadersTests.cs
FrameRequestStreamTests.cs
FrameResponseHeadersTests.cs Initial bedrock refactoring (#1995) 2017-08-16 00:02:48 -07:00
FrameResponseStreamTests.cs
FrameTests.cs Add fixes for problems discovered by xunit.analyzers (#1999) 2017-08-16 09:37:49 -07:00
HPackEncoderTests.cs Initial HTTP/2 support. 2017-08-16 10:04:44 -07:00
HeartbeatTests.cs
Http2ConnectionTests.cs Initial HTTP/2 support. 2017-08-16 10:04:44 -07:00
HttpParserTests.cs Add fixes for problems discovered by xunit.analyzers (#1999) 2017-08-16 09:37:49 -07:00
HttpUtilitiesTest.cs Add fixes for problems discovered by xunit.analyzers (#1999) 2017-08-16 09:37:49 -07:00
HuffmanTests.cs Initial HTTP/2 support. 2017-08-16 10:04:44 -07:00
IntegerDecoderTests.cs Initial HTTP/2 support. 2017-08-16 10:04:44 -07:00
IntegerEncoderTests.cs Initial HTTP/2 support. 2017-08-16 10:04:44 -07:00
Kestrel.Core.Tests.csproj
KestrelEventSourceTests.cs
KestrelServerLimitsTests.cs
KestrelServerOptionsTests.cs
KestrelServerTests.cs
KnownStringsTests.cs
MessageBodyTests.cs
MinDataRateTests.cs
OutputProducerTests.cs
PathNormalizerTests.cs
PipeOptionsTests.cs
PipelineExtensionTests.cs
ResourceCounterTests.cs
ServerAddressTests.cs
StreamsTests.cs
StringUtilitiesTests.cs
TestInput.cs Initial bedrock refactoring (#1995) 2017-08-16 00:02:48 -07:00
ThrowingWriteOnlyStreamTests.cs
xunit.runner.json