Improve integration test helper functions (#2049)
Set request headers in helper functions, and new helper for requests with string-formatted URLs
This commit is contained in:
parent
3ffedeab03
commit
f64c232953
13 changed files with 9 additions and 24 deletions
|
@ -5,7 +5,6 @@
|
||||||
package integrations
|
package integrations
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
@ -25,9 +24,8 @@ func TestAPIListComments(t *testing.T) {
|
||||||
repoOwner := models.AssertExistsAndLoadBean(t, &models.User{ID: repo.OwnerID}).(*models.User)
|
repoOwner := models.AssertExistsAndLoadBean(t, &models.User{ID: repo.OwnerID}).(*models.User)
|
||||||
|
|
||||||
session := loginUser(t, repoOwner.Name)
|
session := loginUser(t, repoOwner.Name)
|
||||||
requestUrl := fmt.Sprintf("/api/v1/repos/%s/%s/issues/%d/comments",
|
req := NewRequestf(t, "GET", "/api/v1/repos/%s/%s/issues/%d/comments",
|
||||||
repoOwner.Name, repo.Name, issue.Index)
|
repoOwner.Name, repo.Name, issue.Index)
|
||||||
req := NewRequest(t, "GET", requestUrl)
|
|
||||||
resp := session.MakeRequest(t, req)
|
resp := session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
package integrations
|
package integrations
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
@ -22,8 +21,7 @@ func TestAPITeam(t *testing.T) {
|
||||||
user := models.AssertExistsAndLoadBean(t, &models.User{ID: teamUser.UID}).(*models.User)
|
user := models.AssertExistsAndLoadBean(t, &models.User{ID: teamUser.UID}).(*models.User)
|
||||||
|
|
||||||
session := loginUser(t, user.Name)
|
session := loginUser(t, user.Name)
|
||||||
url := fmt.Sprintf("/api/v1/teams/%d", teamUser.TeamID)
|
req := NewRequestf(t, "GET", "/api/v1/teams/%d", teamUser.TeamID)
|
||||||
req := NewRequest(t, "GET", url)
|
|
||||||
resp := session.MakeRequest(t, req)
|
resp := session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,6 @@ func TestChangeDefaultBranch(t *testing.T) {
|
||||||
"action": "default_branch",
|
"action": "default_branch",
|
||||||
"branch": "DefaultBranch",
|
"branch": "DefaultBranch",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
@ -46,7 +45,6 @@ func TestChangeDefaultBranch(t *testing.T) {
|
||||||
"action": "default_branch",
|
"action": "default_branch",
|
||||||
"branch": "does_not_exist",
|
"branch": "does_not_exist",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusNotFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusNotFound, resp.HeaderCode)
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,6 @@ func TestDeleteUser(t *testing.T) {
|
||||||
req = NewRequestWithValues(t, "POST", "/admin/users/8/delete", map[string]string{
|
req = NewRequestWithValues(t, "POST", "/admin/users/8/delete", map[string]string{
|
||||||
"_csrf": doc.GetCSRF(),
|
"_csrf": doc.GetCSRF(),
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,6 @@ func TestCreateFile(t *testing.T) {
|
||||||
"content": "Content",
|
"content": "Content",
|
||||||
"commit_choice": "direct",
|
"commit_choice": "direct",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
}
|
}
|
||||||
|
@ -57,7 +56,6 @@ func TestCreateFileOnProtectedBranch(t *testing.T) {
|
||||||
"branchName": "master",
|
"branchName": "master",
|
||||||
"canPush": "true",
|
"canPush": "true",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
||||||
// Check if master branch has been locked successfully
|
// Check if master branch has been locked successfully
|
||||||
|
@ -83,7 +81,6 @@ func TestCreateFileOnProtectedBranch(t *testing.T) {
|
||||||
"commit_choice": "direct",
|
"commit_choice": "direct",
|
||||||
})
|
})
|
||||||
|
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
||||||
// Check body for error message
|
// Check body for error message
|
||||||
|
@ -113,7 +110,6 @@ func testEditFile(t *testing.T, session *TestSession, user, repo, branch, filePa
|
||||||
"commit_choice": "direct",
|
"commit_choice": "direct",
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
@ -150,7 +146,6 @@ func testEditFileToNewBranch(t *testing.T, session *TestSession, user, repo, bra
|
||||||
"new_branch_name": targetBranch,
|
"new_branch_name": targetBranch,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -173,7 +173,6 @@ func loginUserWithPassword(t testing.TB, userName, password string) *TestSession
|
||||||
"user_name": userName,
|
"user_name": userName,
|
||||||
"password": password,
|
"password": password,
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = MakeRequest(req)
|
resp = MakeRequest(req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
@ -218,12 +217,18 @@ func NewRequest(t testing.TB, method, urlStr string) *http.Request {
|
||||||
return NewRequestWithBody(t, method, urlStr, nil)
|
return NewRequestWithBody(t, method, urlStr, nil)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func NewRequestf(t testing.TB, method, urlFormat string, args ...interface{}) *http.Request {
|
||||||
|
return NewRequest(t, method, fmt.Sprintf(urlFormat, args...))
|
||||||
|
}
|
||||||
|
|
||||||
func NewRequestWithValues(t testing.TB, method, urlStr string, values map[string]string) *http.Request {
|
func NewRequestWithValues(t testing.TB, method, urlStr string, values map[string]string) *http.Request {
|
||||||
urlValues := url.Values{}
|
urlValues := url.Values{}
|
||||||
for key, value := range values {
|
for key, value := range values {
|
||||||
urlValues[key] = []string{value}
|
urlValues[key] = []string{value}
|
||||||
}
|
}
|
||||||
return NewRequestWithBody(t, method, urlStr, bytes.NewBufferString(urlValues.Encode()))
|
req := NewRequestWithBody(t, method, urlStr, bytes.NewBufferString(urlValues.Encode()))
|
||||||
|
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
||||||
|
return req
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewRequestWithJSON(t testing.TB, method, urlStr string, v interface{}) *http.Request {
|
func NewRequestWithJSON(t testing.TB, method, urlStr string, v interface{}) *http.Request {
|
||||||
|
|
|
@ -90,7 +90,6 @@ func testNewIssue(t *testing.T, session *TestSession, user, repo, title string)
|
||||||
"_csrf": htmlDoc.GetCSRF(),
|
"_csrf": htmlDoc.GetCSRF(),
|
||||||
"title": title,
|
"title": title,
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
redirectedURL := resp.Headers["Location"]
|
redirectedURL := resp.Headers["Location"]
|
||||||
|
|
|
@ -38,7 +38,6 @@ func testPullCreate(t *testing.T, session *TestSession, user, repo, branch strin
|
||||||
"_csrf": htmlDoc.GetCSRF(),
|
"_csrf": htmlDoc.GetCSRF(),
|
||||||
"title": "This is a pull title",
|
"title": "This is a pull title",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,6 @@ func testPullMerge(t *testing.T, session *TestSession, user, repo, pullnum strin
|
||||||
req = NewRequestWithValues(t, "POST", link, map[string]string{
|
req = NewRequestWithValues(t, "POST", link, map[string]string{
|
||||||
"_csrf": htmlDoc.GetCSRF(),
|
"_csrf": htmlDoc.GetCSRF(),
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
@ -44,7 +43,6 @@ func testPullCleanUp(t *testing.T, session *TestSession, user, repo, pullnum str
|
||||||
req = NewRequestWithValues(t, "POST", link, map[string]string{
|
req = NewRequestWithValues(t, "POST", link, map[string]string{
|
||||||
"_csrf": htmlDoc.GetCSRF(),
|
"_csrf": htmlDoc.GetCSRF(),
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusOK, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -56,7 +56,6 @@ func doTestRepoCommitWithStatus(t *testing.T, state string, classes ...string) {
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
req.Header.Add("Content-Type", "application/json")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusCreated, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusCreated, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -39,7 +39,6 @@ func testRepoFork(t *testing.T, session *TestSession) *TestResponse {
|
||||||
"uid": "1",
|
"uid": "1",
|
||||||
"repo_name": "repo1",
|
"repo_name": "repo1",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,6 @@ func testRepoMigrate(t testing.TB, session *TestSession, cloneAddr, repoName str
|
||||||
"repo_name": repoName,
|
"repo_name": repoName,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp = session.MakeRequest(t, req)
|
resp = session.MakeRequest(t, req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
|
@ -24,7 +24,6 @@ func TestSignup(t *testing.T) {
|
||||||
"password": "examplePassword",
|
"password": "examplePassword",
|
||||||
"retype": "examplePassword",
|
"retype": "examplePassword",
|
||||||
})
|
})
|
||||||
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
|
|
||||||
resp := MakeRequest(req)
|
resp := MakeRequest(req)
|
||||||
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
assert.EqualValues(t, http.StatusFound, resp.HeaderCode)
|
||||||
|
|
||||||
|
|
Reference in a new issue