You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Masakazu Kitajo (JIRA)" <ji...@apache.org> on 2015/07/31 21:35:05 UTC

[jira] [Commented] (TS-3808) ☂ Testing HTTP/2 features by h2spec

    [ https://issues.apache.org/jira/browse/TS-3808?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14649705#comment-14649705 ] 

Masakazu Kitajo commented on TS-3808:
-------------------------------------

Some of stream errors are treated as connection errors. TS-3497 will fix it.

>  ☂ Testing HTTP/2 features by h2spec
> ------------------------------------
>
>                 Key: TS-3808
>                 URL: https://issues.apache.org/jira/browse/TS-3808
>             Project: Traffic Server
>          Issue Type: Test
>          Components: HTTP/2
>            Reporter: Masaori Koshiba
>              Labels: Umbrella
>
> This is an umbrella ticket for testing HTTP/2 features of ATS by [h2spec|https://github.com/summerwind/h2spec].
> Goal : pass all tests.
> h3. Status
> * ATS : {{35f11dd5aab06364547d423e26b3d5bc31c4b1e1}}
> * h2spec : {{v1.1.1}}
> * 68 tests, 48 passed, 1 skipped, 19 failed
> h4. Details
> * 3.5. HTTP/2 Connection Preface
> ** ✓ Sends invalid connection preface
> * 4.2. Frame Size
> ** ✓ Sends large size frame that exceeds the SETTINGS_MAX_FRAME_SIZE
> * 4.3. Header Compression and Decompression
> ** ✓ Sends invalid header block fragment
> * 5.1. Stream States 
> ** ✓ idle: Sends a DATA frame
> ** × idle: Sends a RST_STREAM frame
> ** × idle: Sends a WINDOW_UPDATE frame
> ** ✓ idle: Sends a CONTINUATION frame
> ** ✓ half closed (remote): Sends a DATA frame
> ** × half closed (remote): Sends a HEADERS frame
> ** ✓ half closed (remote): Sends a CONTINUATION frame
> ** × closed: Sends a CONTINUATION frame
> ** 5.1.1. Stream Identifiers
> *** ✓ Sends even-numbered stream identifier
> ** 5.1.2. Stream Concurrency
> *** Skipped: SETTINGS_MAX_CONCURRENT_STREAMS is unlimited
> * 5.3. Stream Priority
> ** 5.3.1. Stream Dependencies
> *** × Sends HEADERS frame that depend on itself
> *** ✓ Sends PRIORITY frame that depend on itself
> * 5.4. Error Handling
> ** 5.4.1. Connection Error Handling
> *** × Receives a GOAWAY frame
> * 5.5. Extending HTTP/2
> ** ✓ Sends an unknown extension frame
> ** × Sends an unknown extension frame in the middle of a header block
> * 6.1. DATA
> ** ✓ Sends a DATA frame with 0x0 stream identifier
> ** ✓ Sends a DATA frame on the stream that is not opend
> ** ✓ Sends a DATA frame with invalid pad length
> * 6.2. HEADERS
> ** ✓ Sends a HEADERS frame followed by any frame other than CONTINUATION
> ** ✓ Sends a HEADERS frame followed by a frame on a different stream
> ** ✓ Sends a HEADERS frame with 0x0 stream identifier
> ** ✓ Sends a HEADERS frame with invalid pad length
> * 6.3. PRIORITY
> ** ✓ Sends a PRIORITY frame with 0x0 stream identifier
> ** ✓ Sends a PRIORITY frame with a length other than 5 octets
> * 6.4. RST_STREAM
> ** ✓ Sends a RST_STREAM frame with 0x0 stream identifier
> ** × Sends a RST_STREAM frame on a idle stream
> ** ✓ Sends a RST_STREAM frame with a length other than 4 octets
> * 6.5. SETTINGS
> ** ✓ Sends a SETTINGS frame
> ** ✓ Sends a SETTINGS frame that is not a zero-length with ACK flag
> ** ✓ Sends a SETTINGS frame with the stream identifier that is not 0x0
> ** × Sends a SETTINGS frame with a length other than a multiple of 6 octets
> ** 6.5.2. Defined SETTINGS Parameters
> *** ✓ SETTINGS_ENABLE_PUSH (0x2): Sends the value other than 0 or 1
> *** ✓ SETTINGS_INITIAL_WINDOW_SIZE (0x4): Sends the value above the maximum flow control window size
> *** ✓ SETTINGS_MAX_FRAME_SIZE (0x5): Sends the value below the initial value
> *** ✓ SETTINGS_MAX_FRAME_SIZE (0x5): Sends the value above the maximum allowed frame size
> * 6.7. PING
> ** ✓ Sends a PING frame
> ** ✓ Sends a PING frame with the stream identifier that is not 0x0
> ** ✓ Sends a PING frame with a length field value other than 8
> * 6.8. GOAWAY
> ** ✓ Sends a GOAWAY frame with the stream identifier that is not 0x0
> * 6.9. WINDOW_UPDATE
> ** ✓ Sends a WINDOW_UPDATE frame
> ** ✓ Sends a WINDOW_UPDATE frame with an flow control window increment of 0
> ** ✓ Sends a WINDOW_UPDATE frame with an flow control window increment of 0 on a stream
> ** ✓ Sends a WINDOW_UPDATE frame with a length other than a multiple of 4 octets
> ** 6.9.1. The Flow Control Window
> *** × Sends multiple WINDOW_UPDATE frames on a connection increasing the flow control window to above 2^31-1
> *** × Sends multiple WINDOW_UPDATE frames on a stream increasing the flow control window to above 2^31-1
> ** 6.9.2. Initial Flow Control Window Size
> *** ✓ Sends a SETTINGS_INITIAL_WINDOW_SIZE settings with an exceeded maximum window size value
> * 6.10. CONTINUATION
> ** × Sends a CONTINUATION frame
> ** × Sends multiple CONTINUATION frames
> ** × Sends a CONTINUATION frame followed by any frame other than CONTINUATION
> ** × Sends a CONTINUATION frame followed by a frame on a different stream
> ** × Sends a CONTINUATION frame with the stream identifier that is 0x0
> * 8.1. HTTP Request/Response Exchange
> ** × Sends a HEADERS frame containing trailer part
> ** 8.1.2. HTTP Header Fields
> *** 8.1.2.2. Connection-Specific Header Fields
> **** × Sends a HEADERS frame that contains the connection-specific header field



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)