[GITEA] Fix API inconsistencies
- Document the correct content types for Git archives. Add code that actually sets the correct application type for `.zip` and `.tar.gz`. - When an action (POST/PUT/DELETE method) was successful, an 204 status code should be returned instead of status code 200. - Add and adjust integration testing. - Resolves #2180 - Resolves #2181 (cherry picked from commit 6c8c4512b530e966557a5584efbbb757638b3429) (cherry picked from commit 3f74bcb14df99ee75a170813979beb5ce04c8027) (cherry picked from commit 6ed9057fd76b2d5d0dfdb3c663367ae861ab8093)
This commit is contained in:
parent
0b503e5e86
commit
bbe5a881cc
3 changed files with 19 additions and 2 deletions
|
@ -32,18 +32,21 @@ func TestAPIDownloadArchive(t *testing.T) {
|
|||
bs, err := io.ReadAll(resp.Body)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, bs, 320)
|
||||
assert.EqualValues(t, "application/zip", resp.Header().Get("Content-Type"))
|
||||
|
||||
link, _ = url.Parse(fmt.Sprintf("/api/v1/repos/%s/%s/archive/master.tar.gz", user2.Name, repo.Name))
|
||||
resp = MakeRequest(t, NewRequest(t, "GET", link.String()).AddTokenAuth(token), http.StatusOK)
|
||||
bs, err = io.ReadAll(resp.Body)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, bs, 266)
|
||||
assert.EqualValues(t, "application/gzip", resp.Header().Get("Content-Type"))
|
||||
|
||||
link, _ = url.Parse(fmt.Sprintf("/api/v1/repos/%s/%s/archive/master.bundle", user2.Name, repo.Name))
|
||||
resp = MakeRequest(t, NewRequest(t, "GET", link.String()).AddTokenAuth(token), http.StatusOK)
|
||||
bs, err = io.ReadAll(resp.Body)
|
||||
assert.NoError(t, err)
|
||||
assert.Len(t, bs, 382)
|
||||
assert.EqualValues(t, "application/octet-stream", resp.Header().Get("Content-Type"))
|
||||
|
||||
link, _ = url.Parse(fmt.Sprintf("/api/v1/repos/%s/%s/archive/master", user2.Name, repo.Name))
|
||||
MakeRequest(t, NewRequest(t, "GET", link.String()).AddTokenAuth(token), http.StatusBadRequest)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue