Skip to content

Commit f8ebfd2

Browse files
committed
Add simple integration test for sudo
Signed-off-by: Andrew Thornton <[email protected]>
1 parent 8ae3b1f commit f8ebfd2

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

integrations/api_admin_test.go

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import (
99
"net/http"
1010
"testing"
1111

12+
"github.com/stretchr/testify/assert"
13+
1214
"code.gitea.io/gitea/models"
1315
api "code.gitea.io/sdk/gitea"
1416
)
@@ -71,3 +73,30 @@ func TestAPIAdminDeleteUnauthorizedKey(t *testing.T) {
7173
adminUsername, newPublicKey.ID)
7274
session.MakeRequest(t, req, http.StatusForbidden)
7375
}
76+
77+
func TestAPISudoUser(t *testing.T) {
78+
prepareTestEnv(t)
79+
adminUsername := "user1"
80+
normalUsername := "user2"
81+
session := loginUser(t, adminUsername)
82+
83+
urlStr := fmt.Sprintf("/api/v1/user?sudo=%s", normalUsername)
84+
req := NewRequest(t, "GET", urlStr)
85+
resp := session.MakeRequest(t, req, http.StatusOK)
86+
var user api.User
87+
DecodeJSON(t, resp, &user)
88+
89+
assert.Equal(t, normalUsername, user.UserName)
90+
}
91+
92+
func TestAPISudoUserForbidden(t *testing.T) {
93+
prepareTestEnv(t)
94+
adminUsername := "user1"
95+
normalUsername := "user2"
96+
97+
session := loginUser(t, normalUsername)
98+
99+
urlStr := fmt.Sprintf("/api/v1/user?sudo=%s", adminUsername)
100+
req := NewRequest(t, "GET", urlStr)
101+
session.MakeRequest(t, req, http.StatusForbidden)
102+
}

0 commit comments

Comments
 (0)