小编smi*_*trl的帖子

模拟 Go Echo 上下文

我正在尝试测试 Go echo 的路由处理程序。

代码如下:

p := NewPoint(s.db)

// Update the deduction and exchange rate.
e := echo.New()

mapD := map[string]string{"exchange_cash": "5", "exchange_point": "7"}
mapB, _ := json.Marshal(mapD)
req := httptest.NewRequest(echo.POST, "http://localhost:1323/settings/update/exchange", bytes.NewReader(mapB))
//req := httptest.NewRequest(echo.POST, "/settings/update/exchange", bytes.NewReader(mapB))
rec := httptest.NewRecorder()
c := e.NewContext(req, rec)

u := p.UpdateDeductionRate(c)
assert.Equal(s.T(), "success", u)
Run Code Online (Sandbox Code Playgroud)

但这仍然给出“不支持的媒体类型”之类的错误

对于 Get 测试,代码如下

req := httptest.NewRequest(echo.GET, "http://localhost:1323/admin/user_points/settings/get", nil)
//req := httptest.NewRequest(echo.GET, "/admin/user_points/settings/get", nil)
rec := httptest.NewRecorder()
c := e.NewContext(req, rec)
g := p.GetRates(c)
assert.Equal(s.T(), "success", g)
Run Code Online (Sandbox Code Playgroud)

g 为零。看起来处理程序 …

integration-testing go

4
推荐指数
1
解决办法
3060
查看次数

标签 统计

go ×1

integration-testing ×1