【发布时间】:2021-07-06 21:26:15
【问题描述】:
如何使用http.Client 创建一个用于测试目的的“损坏”表单,这将在处理程序函数中触发ParseForm() 上的响应错误?
我有以下代码:
func (app *App) signupUser(w http.ResponseWriter, r *http.Request) {
err := r.ParseForm()
if err != nil { // how to trigger this if statement?
sendStatus(w, http.StatusBadRequest, "error parsing form")
return
}
...
然后在测试期间我使用http.Client 来测试这个控制器:
resp, err = client.PostForm(ts.URL+"/user/signup", url.Values{
"email": {testEmail},
"password": {goodPassword},
)
if err != nil {
t.Error(err) // I never get here
}
【问题讨论】:
标签: forms go testing http.client