MCPcopy
hub / github.com/vulcand/vulcand / TestSameHeaderMulti

Method TestSameHeaderMulti

plugin/rewrite/rewrite_test.go:167–191  ·  view source on GitHub ↗
(c *C)

Source from the content-addressed store, hash-verified

165}
166
167func (s *RewriteSuite) TestSameHeaderMulti(c *C) {
168 var outURL string
169 handler := http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
170 outURL = rawURL(req)
171 w.Write([]byte("hello"))
172 })
173
174 rh, err := newRewriteHandler(handler,
175 &Rewrite{
176 "^http://localhost/(foo)/(bar)$",
177 `http://localhost/$1/{{.Request.Header.Get "X-Header"}}/$2/{{.Request.Header.Get "X-Header"}}`, false, false})
178
179 c.Assert(rh, NotNil)
180 c.Assert(err, IsNil)
181
182 srv := httptest.NewServer(rh)
183 defer srv.Close()
184
185 re, _, err := testutils.Get(srv.URL+"/foo/bar",
186 testutils.Host("localhost"), testutils.Header("X-Header", "baz"))
187
188 c.Assert(err, IsNil)
189 c.Assert(re.StatusCode, Equals, http.StatusOK)
190 c.Assert(outURL, Equals, "http://localhost/foo/baz/bar/baz")
191}
192
193func (s *RewriteSuite) TestUnknownHeader(c *C) {
194 var outURL string

Callers

nothing calls this directly

Calls 6

CloseMethod · 0.95
rawURLFunction · 0.85
newRewriteHandlerFunction · 0.85
WriteMethod · 0.45
GetMethod · 0.45
HeaderMethod · 0.45

Tested by

no test coverage detected