MCPcopy
hub / github.com/cortesi/devd / TestServeFile

Function TestServeFile

fileserver/fileserver_test.go:125–152  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

123}
124
125func TestServeFile(t *testing.T) {
126 defer afterTest(t)
127 ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
128 ServeFile(w, r, "testdata/file")
129 }))
130 defer ts.Close()
131
132 var err error
133
134 file, err := ioutil.ReadFile(testFile)
135 if err != nil {
136 t.Fatal("reading file:", err)
137 }
138
139 // set up the Request (re-used for all tests)
140 var req http.Request
141 req.Header = make(http.Header)
142 if req.URL, err = url.Parse(ts.URL); err != nil {
143 t.Fatal("ParseURL:", err)
144 }
145 req.Method = "GET"
146
147 // straight GET
148 _, body := getBody(t, "straight get", req)
149 if !bytes.Equal(body, file) {
150 t.Fatalf("body mismatch: got %q, want %q", body, file)
151 }
152}
153
154var fsRedirectTestData = []struct {
155 original, redirect string

Callers

nothing calls this directly

Calls 4

afterTestFunction · 0.85
ServeFileFunction · 0.85
getBodyFunction · 0.85
CloseMethod · 0.45

Tested by

no test coverage detected