Skip to content

Commit 34dd481

Browse files
committed
Use servertester wantGoFrame for assertion
1 parent f1855d3 commit 34dd481

File tree

2 files changed

+7
-10
lines changed

2 files changed

+7
-10
lines changed

internal/transport/http2_server.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -349,12 +349,12 @@ func (t *http2Server) operateHeaders(ctx context.Context, frame *http2.MetaHeade
349349
})
350350
return nil
351351
}
352-
352+
353353
if streamID%2 != 1 || streamID <= t.maxStreamID {
354354
// illegal gRPC stream id.
355355
t.controlBuf.put(&goAway{
356356
code: http2.ErrCodeProtocol,
357-
debugData: []byte(fmt.Sprintf("received an illegal stream id, %+v", streamID)),
357+
debugData: []byte(fmt.Sprintf("received an illegal stream id: %+v", streamID)),
358358
closeConn: fmt.Errorf("received an illegal stream id: %v. headers frame: %+v", streamID, frame),
359359
})
360360
return nil

test/end2end_test.go

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3925,14 +3925,11 @@ func (s) TestClientInvalidStreamID(t *testing.T) {
39253925
st := newServerTesterFromConn(t, conn)
39263926
st.greet()
39273927
st.writeHeadersGRPC(2, "/grpc.testing.TestService/StreamingInputCall", true)
3928-
frame, err := st.fr.ReadFrame()
3929-
switch frame := frame.(type) {
3930-
case *http2.GoAwayFrame:
3931-
if frame.ErrCode != http2.ErrCodeProtocol {
3932-
t.Fatalf("GoAway Frame received with code %v, want code: http.ErrCodeProtocol", frame.ErrCode)
3933-
}
3934-
default:
3935-
t.Fatalf("want: GoAwayFrame. got: %v", frame)
3928+
goAwayFrame := st.wantGoAway(http2.ErrCodeProtocol)
3929+
got := string(goAwayFrame.DebugData()[:])
3930+
want := "received an illegal stream id: 2"
3931+
if got != want {
3932+
t.Fatalf("Debug data received from stream %v, want: %v", got, want)
39363933
}
39373934
}
39383935

0 commit comments

Comments
 (0)