MCPcopy Index your code
hub / github.com/coder/coder / serveTailnetHTTP

Function serveTailnetHTTP

codersdk/workspacesdk/agentconn_test.go:154–172  ·  view source on GitHub ↗
(t *testing.T, conn *tailnet.Conn, handler http.Handler)

Source from the content-addressed store, hash-verified

152}
153
154func serveTailnetHTTP(t *testing.T, conn *tailnet.Conn, handler http.Handler) {
155 t.Helper()
156
157 ln, err := conn.Listen("tcp", fmt.Sprintf(":%d", workspacesdk.AgentHTTPAPIServerPort))
158 require.NoError(t, err)
159
160 server := &http.Server{Handler: handler, ReadHeaderTimeout: testutil.WaitShort}
161 t.Cleanup(func() {
162 assert.NoError(t, server.Close())
163 assert.NoError(t, ln.Close())
164 })
165
166 go func() {
167 err := server.Serve(ln)
168 if err != nil && !errors.Is(err, net.ErrClosed) && !errors.Is(err, http.ErrServerClosed) {
169 assert.NoError(t, err)
170 }
171 }()
172}
173
174// stitchTailnet cross-programs every conn's node into every other conn, the
175// N-peer analog of tailnet's stitch test helper, so the peers can reach each

Calls 7

CloseMethod · 0.95
ServeMethod · 0.95
HelperMethod · 0.65
ListenMethod · 0.65
CleanupMethod · 0.65
CloseMethod · 0.65
IsMethod · 0.45

Tested by

no test coverage detected