summaryrefslogtreecommitdiff
path: root/http_server_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'http_server_test.go')
-rw-r--r--http_server_test.go57
1 files changed, 56 insertions, 1 deletions
diff --git a/http_server_test.go b/http_server_test.go
index 8b08c46..12e03c0 100644
--- a/http_server_test.go
+++ b/http_server_test.go
@@ -85,7 +85,6 @@ func TestGorankusuAPITargetRunHTTP_withRawBody_JSON(t *testing.T) {
tag string
exp string
)
-
for _, c = range listCase {
var reqparams = httpRequestParams{
method: apiTargetRunHTTP.Method.String(),
@@ -105,6 +104,62 @@ func TestGorankusuAPITargetRunHTTP_withRawBody_JSON(t *testing.T) {
}
}
+func TestGorankusuAPITargetRunHTTP_withTargetHeaders(t *testing.T) {
+ type testCase struct {
+ tag string
+ }
+
+ var (
+ tdata *test.Data
+ err error
+ )
+ tdata, err = test.LoadData(`testdata/apiTargetRunHTTP_withTargetHeaders_test.txt`)
+ if err != nil {
+ t.Fatal(err)
+ }
+
+ var listCase = []testCase{{
+ tag: `global`,
+ }, {
+ tag: `override`,
+ }}
+
+ var (
+ c testCase
+ runResp RunResponse
+ buf bytes.Buffer
+ tag string
+ exp string
+ )
+ for _, c = range listCase {
+ var reqparams = httpRequestParams{
+ method: apiTargetRunHTTP.Method.String(),
+ path: apiTargetRunHTTP.Path,
+ body: tdata.Input[c.tag+`:request_body`],
+ }
+
+ _, runResp = dummyGorankusuServe(t, reqparams)
+
+ tag = c.tag + `:RunResponse.DumpRequest`
+ exp = string(tdata.Output[tag])
+ test.Assert(t, tag, exp, string(runResp.DumpRequest))
+
+ tag = c.tag + `:RunResponse.DumpResponse`
+ exp = string(tdata.Output[tag])
+ test.Assert(t, tag, exp, string(runResp.DumpResponse))
+
+ tag = c.tag + `:RunResponse.ResponseBody`
+ exp = string(tdata.Output[tag])
+
+ buf.Reset()
+ err = json.Indent(&buf, runResp.ResponseBody, ``, ` `)
+ if err != nil {
+ t.Fatal(err)
+ }
+ test.Assert(t, tag, exp, buf.String())
+ }
+}
+
func dummyGorankusuServe(t *testing.T, reqparams httpRequestParams) (rawResp []byte, runResp RunResponse) {
var body bytes.Buffer
var recorder = httptest.NewRecorder()