Skip to content

Commit b489505

Browse files
committed
chore: make first test more robust
1 parent 3540823 commit b489505

File tree

1 file changed

+25
-14
lines changed

1 file changed

+25
-14
lines changed

coderd/httpapi/httpapi_test.go

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -215,26 +215,37 @@ func TestOneWayWebSocket(t *testing.T) {
215215
t.Run("Produces an error if the socket connection could not be established", func(t *testing.T) {
216216
t.Parallel()
217217

218-
// WebSocket connections cannot be created on HTTP/1.0 and below
219-
req := createBaseRequest(t)
220-
req.ProtoMajor = 1
221-
req.ProtoMinor = 0
222-
req.Proto = "HTTP/1.0"
223-
224-
_, _, err := httpapi.OneWayWebSocket[any](httptest.NewRecorder(), req)
225-
require.ErrorContains(
226-
t,
227-
err,
228-
"WebSocket protocol violation: handshake request must be at least HTTP/1.1:",
229-
)
218+
incorrectProtocols := []struct {
219+
major int
220+
minor int
221+
proto string
222+
}{
223+
{0, 9, "HTTP/0.9"},
224+
{1, 0, "HTTP/1.0"},
225+
}
226+
for _, p := range incorrectProtocols {
227+
req := createBaseRequest(t)
228+
req.ProtoMajor = p.major
229+
req.ProtoMinor = p.minor
230+
req.Proto = p.proto
231+
232+
_, _, err := httpapi.OneWayWebSocket[any](httptest.NewRecorder(), req)
233+
require.ErrorContains(
234+
t,
235+
err,
236+
fmt.Sprintf(
237+
"WebSocket protocol violation: handshake request must be at least HTTP/1.1: %q",
238+
p.proto,
239+
),
240+
)
241+
}
230242
})
231243

232244
t.Run("Returned callback can publish a new event to the WebSocket connection", func(t *testing.T) {
233245
t.Parallel()
234246

235-
r := strings.NewReader("")
236247
recorder := httptest.NewRecorder()
237-
writer := wrapWriter(recorder, r)
248+
writer := wrapWriter(recorder, strings.NewReader(""))
238249
send, _, err := httpapi.OneWayWebSocket[codersdk.ServerSentEvent](
239250
writer,
240251
createBaseRequest(t),

0 commit comments

Comments
 (0)