mirror of
https://github.com/go-gitea/gitea.git
synced 2026-09-19 06:05:18 +02:00
reverted back to old logic
This commit is contained in:
@@ -427,53 +427,4 @@ func TestAPIDeleteOrgRepos(t *testing.T) {
|
||||
req = NewRequest(t, "DELETE", fmt.Sprintf("/api/v1/orgs/%s/repos", orgName)).AddTokenAuth(token)
|
||||
MakeRequest(t, req, http.StatusNoContent)
|
||||
})
|
||||
|
||||
t.Run("Pagination works for large org", func(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
|
||||
session := loginUser(t, "user1")
|
||||
token := getTokenForLoggedInUser(t, session, auth_model.AccessTokenScopeWriteOrganization, auth_model.AccessTokenScopeWriteRepository)
|
||||
|
||||
orgName := "test_pagination_org"
|
||||
req := NewRequestWithJSON(t, "POST", "/api/v1/orgs", &api.CreateOrgOption{
|
||||
UserName: orgName,
|
||||
}).AddTokenAuth(token)
|
||||
MakeRequest(t, req, http.StatusCreated)
|
||||
|
||||
// Create 75 repos to test pagination (batch size is 50)
|
||||
for i := range 75 {
|
||||
repoName := fmt.Sprintf("test_repo_%d", i)
|
||||
req := NewRequestWithJSON(t, "POST", fmt.Sprintf("/api/v1/org/%s/repos", orgName), &api.CreateRepoOption{
|
||||
Name: repoName,
|
||||
}).AddTokenAuth(token)
|
||||
MakeRequest(t, req, http.StatusCreated)
|
||||
}
|
||||
|
||||
// Delete all repos - should return 202 Accepted
|
||||
req = NewRequest(t, "DELETE", fmt.Sprintf("/api/v1/orgs/%s/repos", orgName)).AddTokenAuth(token)
|
||||
MakeRequest(t, req, http.StatusAccepted)
|
||||
|
||||
// Wait for background deletion to complete (poll until done)
|
||||
org := unittest.AssertExistsAndLoadBean(t, &org_model.Organization{Name: orgName})
|
||||
maxWait := 30 * time.Second
|
||||
checkInterval := 500 * time.Millisecond
|
||||
elapsed := time.Duration(0)
|
||||
|
||||
for elapsed < maxWait {
|
||||
time.Sleep(checkInterval)
|
||||
elapsed += checkInterval
|
||||
|
||||
remainingRepos, err := repo_model.GetOrgRepositories(t.Context(), org.ID)
|
||||
assert.NoError(t, err)
|
||||
|
||||
if len(remainingRepos) == 0 {
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
// Verify all repos were deleted
|
||||
remainingRepos, err := repo_model.GetOrgRepositories(t.Context(), org.ID)
|
||||
assert.NoError(t, err)
|
||||
assert.Empty(t, remainingRepos, "All repositories should be deleted")
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user