0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-05-20 17:55:42 +02:00

fix remaining tests

This commit is contained in:
☙◦ The Tablet ❀ GamerGirlandCo ◦❧ 2025-11-25 20:12:59 -05:00
parent bc48d5dea7
commit 1eeb1aa70b
No known key found for this signature in database
GPG Key ID: 924A5F6AF051E87C
16 changed files with 69 additions and 69 deletions

View File

@ -457,7 +457,7 @@ func TestIssueRedirect(t *testing.T) {
// Test external tracker with alphanumeric style (for a pull request) // Test external tracker with alphanumeric style (for a pull request)
req = NewRequest(t, "GET", "/org26/group/41/repo_external_tracker_alpha/issues/1") req = NewRequest(t, "GET", "/org26/group/41/repo_external_tracker_alpha/issues/1")
resp = session.MakeRequest(t, req, http.StatusSeeOther) resp = session.MakeRequest(t, req, http.StatusSeeOther)
assert.Equal(t, "/org26/repo_external_tracker_alpha/pulls/1", test.RedirectURL(resp)) assert.Equal(t, "/org26/group/41/repo_external_tracker_alpha/pulls/1", test.RedirectURL(resp))
// test to check that the PR redirection works if the issue unit is disabled // test to check that the PR redirection works if the issue unit is disabled
// repo1 is a normal repository with issue unit enabled, visit issue 2(which is a pull request) // repo1 is a normal repository with issue unit enabled, visit issue 2(which is a pull request)

View File

@ -70,27 +70,27 @@ func testLimitedOrg(t *testing.T) {
// not logged-in user // not logged-in user
req := NewRequest(t, "GET", "/limited_org") req := NewRequest(t, "GET", "/limited_org")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/limited_org/public_repo_on_limited_org") req = NewRequest(t, "GET", "/limited_org/231/public_repo_on_limited_org")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/limited_org/private_repo_on_limited_org") req = NewRequest(t, "GET", "/limited_org/221/private_repo_on_limited_org")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
// login non-org member user // login non-org member user
session := loginUser(t, "user2") session := loginUser(t, "user2")
req = NewRequest(t, "GET", "/limited_org") req = NewRequest(t, "GET", "/limited_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/limited_org/public_repo_on_limited_org") req = NewRequest(t, "GET", "/limited_org/group/231/public_repo_on_limited_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/limited_org/private_repo_on_limited_org") req = NewRequest(t, "GET", "/limited_org/group/221/private_repo_on_limited_org")
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
// site admin // site admin
session = loginUser(t, "user1") session = loginUser(t, "user1")
req = NewRequest(t, "GET", "/limited_org") req = NewRequest(t, "GET", "/limited_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/limited_org/public_repo_on_limited_org") req = NewRequest(t, "GET", "/limited_org/group/231/public_repo_on_limited_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/limited_org/private_repo_on_limited_org") req = NewRequest(t, "GET", "/limited_org/group/221/private_repo_on_limited_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
} }
@ -98,36 +98,36 @@ func testPrivateOrg(t *testing.T) {
// not logged-in user // not logged-in user
req := NewRequest(t, "GET", "/privated_org") req := NewRequest(t, "GET", "/privated_org")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/privated_org/public_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/340/public_repo_on_private_org")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/privated_org/private_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/352/private_repo_on_private_org")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
// login non-org member user // login non-org member user
session := loginUser(t, "user2") session := loginUser(t, "user2")
req = NewRequest(t, "GET", "/privated_org") req = NewRequest(t, "GET", "/privated_org")
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/privated_org/public_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/340/public_repo_on_private_org")
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/privated_org/private_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/352/private_repo_on_private_org")
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
// non-org member who is collaborator on repo in private org // non-org member who is collaborator on repo in private org
session = loginUser(t, "user4") session = loginUser(t, "user4")
req = NewRequest(t, "GET", "/privated_org") req = NewRequest(t, "GET", "/privated_org")
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
req = NewRequest(t, "GET", "/privated_org/public_repo_on_private_org") // colab of this repo req = NewRequest(t, "GET", "/privated_org/group/340/public_repo_on_private_org") // colab of this repo
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/privated_org/private_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/352/private_repo_on_private_org")
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
// site admin // site admin
session = loginUser(t, "user1") session = loginUser(t, "user1")
req = NewRequest(t, "GET", "/privated_org") req = NewRequest(t, "GET", "/privated_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/privated_org/public_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/340/public_repo_on_private_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
req = NewRequest(t, "GET", "/privated_org/private_repo_on_private_org") req = NewRequest(t, "GET", "/privated_org/group/352/private_repo_on_private_org")
session.MakeRequest(t, req, http.StatusOK) session.MakeRequest(t, req, http.StatusOK)
} }

View File

@ -100,7 +100,7 @@ func TestPullComment(t *testing.T) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
testCreateBranch(t, session, "user2", "repo1", "branch/master", "test-branch/rebase", http.StatusSeeOther) testCreateBranch(t, session, "user2", "repo1", "branch/master", "test-branch/rebase", http.StatusSeeOther)
testCreateBranch(t, session, "user2", "repo1", "branch/master", "test-branch/retarget", http.StatusSeeOther) testCreateBranch(t, session, "user2", "repo1", "branch/master", "test-branch/retarget", http.StatusSeeOther)
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
t.Run("RebaseComment", func(t *testing.T) { testPullCommentRebase(t, u, session) }) t.Run("RebaseComment", func(t *testing.T) { testPullCommentRebase(t, u, session) })
t.Run("RetargetComment", func(t *testing.T) { testPullCommentRetarget(t, u, session) }) t.Run("RetargetComment", func(t *testing.T) { testPullCommentRetarget(t, u, session) })

View File

@ -59,7 +59,7 @@ func TestPullCompare(t *testing.T) {
defer tests.PrepareTestEnv(t)() defer tests.PrepareTestEnv(t)()
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testCreateBranch(t, session, "user1", "repo1", "branch/master", "master1", http.StatusSeeOther) testCreateBranch(t, session, "user1", "repo1", "branch/master", "master1", http.StatusSeeOther)
testEditFile(t, session, 0, "user1", "repo1", "master1", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master1", "README.md", "Hello, World (Edited)\n")
testPullCreate(t, session, "user1", "repo1", false, "master", "master1", "This is a pull title") testPullCreate(t, session, "user1", "repo1", false, "master", "master1", "This is a pull title")
@ -96,7 +96,7 @@ func TestPullCompare_EnableAllowEditsFromMaintainer(t *testing.T) {
// user4 forks repo3 // user4 forks repo3
user4Session := loginUser(t, "user4") user4Session := loginUser(t, "user4")
forkedRepoName := "user4-forked-repo3" forkedRepoName := "user4-forked-repo3"
testRepoFork(t, user4Session, repo3.OwnerName, repo3.Name, "user4", forkedRepoName, "") testRepoFork(t, user4Session, repo3.OwnerName, repo3.Name, 0, "user4", forkedRepoName, "")
forkedRepo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user4", Name: forkedRepoName}) forkedRepo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user4", Name: forkedRepoName})
assert.True(t, forkedRepo.IsPrivate) assert.True(t, forkedRepo.IsPrivate)

View File

@ -137,7 +137,7 @@ func testPullCreateFailure(t *testing.T, session *TestSession, baseRepoOwner, ba
func TestPullCreate(t *testing.T) { func TestPullCreate(t *testing.T) {
onGiteaRun(t, func(t *testing.T, u *url.URL) { onGiteaRun(t, func(t *testing.T, u *url.URL) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"}) repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
assert.Equal(t, 3, repo1.NumPulls) assert.Equal(t, 3, repo1.NumPulls)
@ -198,7 +198,7 @@ func TestPullBranchDelete(t *testing.T) {
defer tests.PrepareTestEnv(t)() defer tests.PrepareTestEnv(t)()
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testCreateBranch(t, session, "user1", "repo1", "branch/master", "master1", http.StatusSeeOther) testCreateBranch(t, session, "user1", "repo1", "branch/master", "master1", http.StatusSeeOther)
testEditFile(t, session, 0, "user1", "repo1", "master1", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master1", "README.md", "Hello, World (Edited)\n")
resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master1", "This is a pull title") resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master1", "This is a pull title")
@ -234,7 +234,7 @@ Check if pull request can be created from base to the fork repository.
func TestPullCreatePrFromBaseToFork(t *testing.T) { func TestPullCreatePrFromBaseToFork(t *testing.T) {
onGiteaRun(t, func(t *testing.T, u *url.URL) { onGiteaRun(t, func(t *testing.T, u *url.URL) {
sessionFork := loginUser(t, "user1") sessionFork := loginUser(t, "user1")
testRepoFork(t, sessionFork, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, sessionFork, 0, "user2", "repo1", "user1", "repo1", "")
// Edit base repository // Edit base repository
sessionBase := loginUser(t, "user2") sessionBase := loginUser(t, "user2")
@ -345,7 +345,7 @@ func TestCreatePullRequestFromNestedOrgForks(t *testing.T) {
func TestPullCreateParallel(t *testing.T) { func TestPullCreateParallel(t *testing.T) {
onGiteaRun(t, func(t *testing.T, u *url.URL) { onGiteaRun(t, func(t *testing.T, u *url.URL) {
sessionFork := loginUser(t, "user1") sessionFork := loginUser(t, "user1")
testRepoFork(t, sessionFork, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, sessionFork, 0, "user2", "repo1", "user1", "repo1", "")
repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"}) repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
assert.Equal(t, 3, repo1.NumPulls) assert.Equal(t, 3, repo1.NumPulls)

View File

@ -117,7 +117,7 @@ func TestPullMerge(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
preparePullMergeWebhook(t, 1) preparePullMergeWebhook(t, 1)
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"}) repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
@ -149,7 +149,7 @@ func TestPullRebase(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
preparePullMergeWebhook(t, 1) preparePullMergeWebhook(t, 1)
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"}) repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
@ -181,7 +181,7 @@ func TestPullRebaseMerge(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
preparePullMergeWebhook(t, 1) preparePullMergeWebhook(t, 1)
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"}) repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
@ -213,7 +213,7 @@ func TestPullSquash(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
preparePullMergeWebhook(t, 1) preparePullMergeWebhook(t, 1)
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited!)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited!)\n")
@ -234,7 +234,7 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
preparePullMergeWebhook(t, 1) preparePullMergeWebhook(t, 1)
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited!)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited!)\n")
@ -272,7 +272,7 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
func TestPullCleanUpAfterMerge(t *testing.T) { func TestPullCleanUpAfterMerge(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "feature/test", "README.md", "Hello, World (Edited - TestPullCleanUpAfterMerge)\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "feature/test", "README.md", "Hello, World (Edited - TestPullCleanUpAfterMerge)\n")
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"}) repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
@ -318,7 +318,7 @@ func TestPullCleanUpAfterMerge(t *testing.T) {
func TestCantMergeWorkInProgress(t *testing.T) { func TestCantMergeWorkInProgress(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "[wip] This is a pull title") resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "[wip] This is a pull title")
@ -334,7 +334,7 @@ func TestCantMergeWorkInProgress(t *testing.T) {
func TestCantMergeConflict(t *testing.T) { func TestCantMergeConflict(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "conflict", "README.md", "Hello, World (Edited Once)\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "conflict", "README.md", "Hello, World (Edited Once)\n")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "base", "README.md", "Hello, World (Edited Twice)\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "base", "README.md", "Hello, World (Edited Twice)\n")
@ -376,7 +376,7 @@ func TestCantMergeConflict(t *testing.T) {
func TestCantMergeUnrelated(t *testing.T) { func TestCantMergeUnrelated(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "base", "README.md", "Hello, World (Edited Twice)\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "base", "README.md", "Hello, World (Edited Twice)\n")
// Now we want to create a commit on a branch that is totally unrelated to our current head // Now we want to create a commit on a branch that is totally unrelated to our current head
@ -468,7 +468,7 @@ func TestCantMergeUnrelated(t *testing.T) {
func TestFastForwardOnlyMerge(t *testing.T) { func TestFastForwardOnlyMerge(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "update", "README.md", "Hello, World 2\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "update", "README.md", "Hello, World 2\n")
// Use API to create a pr from update to master // Use API to create a pr from update to master
@ -589,7 +589,7 @@ func TestFastForwardOnlyMergeWithRequiredSignedCommits(t *testing.T) {
func TestCantFastForwardOnlyMergeDiverging(t *testing.T) { func TestCantFastForwardOnlyMergeDiverging(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "diverging", "README.md", "Hello, World diverged\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "diverging", "README.md", "Hello, World diverged\n")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World 2\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World 2\n")
@ -627,7 +627,7 @@ func TestPullRetargetChildOnBranchDelete(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testEditFileToNewBranch(t, session, 0, "user2", "repo1", "master", "base-pr", "README.md", "Hello, World\n(Edited - TestPullRetargetOnCleanup - base PR)\n") testEditFileToNewBranch(t, session, 0, "user2", "repo1", "master", "base-pr", "README.md", "Hello, World\n(Edited - TestPullRetargetOnCleanup - base PR)\n")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "base-pr", "child-pr", "README.md", "Hello, World\n(Edited - TestPullRetargetOnCleanup - base PR)\n(Edited - TestPullRetargetOnCleanup - child PR)") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "base-pr", "child-pr", "README.md", "Hello, World\n(Edited - TestPullRetargetOnCleanup - base PR)\n(Edited - TestPullRetargetOnCleanup - child PR)")
respBasePR := testPullCreate(t, session, "user2", "repo1", true, "master", "base-pr", "Base Pull Request") respBasePR := testPullCreate(t, session, "user2", "repo1", true, "master", "base-pr", "Base Pull Request")
@ -663,7 +663,7 @@ func TestPullRetargetChildOnBranchDelete(t *testing.T) {
func TestPullDontRetargetChildOnWrongRepo(t *testing.T) { func TestPullDontRetargetChildOnWrongRepo(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "base-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "base-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "base-pr", "child-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n(Edited - TestPullDontRetargetChildOnWrongRepo - child PR)") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "base-pr", "child-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n(Edited - TestPullDontRetargetChildOnWrongRepo - child PR)")
@ -703,7 +703,7 @@ func TestPullDontRetargetChildOnWrongRepo(t *testing.T) {
func TestPullRequestMergedWithNoPermissionDeleteBranch(t *testing.T) { func TestPullRequestMergedWithNoPermissionDeleteBranch(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
session := loginUser(t, "user4") session := loginUser(t, "user4")
testRepoFork(t, session, "user2", "repo1", "user4", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user4", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user4", "repo1", "master", "base-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n") testEditFileToNewBranch(t, session, 0, "user4", "repo1", "master", "base-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n")
respBasePR := testPullCreate(t, session, "user4", "repo1", false, "master", "base-pr", "Base Pull Request") respBasePR := testPullCreate(t, session, "user4", "repo1", false, "master", "base-pr", "Base Pull Request")
@ -728,7 +728,7 @@ func TestPullMergeIndexerNotifier(t *testing.T) {
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) { onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
// create a pull request // create a pull request
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
createPullResp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "Indexer notifier test pull") createPullResp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "Indexer notifier test pull")
@ -790,7 +790,7 @@ func TestPullAutoMergeAfterCommitStatusSucceed(t *testing.T) {
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
user1 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 1}) user1 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 1})
forkedName := "repo1-1" forkedName := "repo1-1"
testRepoFork(t, session, "user2", "repo1", "user1", forkedName, "") testRepoFork(t, session, 0, "user2", "repo1", "user1", forkedName, "")
testEditFile(t, session, 0, "user1", forkedName, "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", forkedName, "master", "README.md", "Hello, World (Edited)\n")
testPullCreate(t, session, "user1", forkedName, false, "master", "master", "Indexer notifier test pull") testPullCreate(t, session, "user1", forkedName, false, "master", "master", "Indexer notifier test pull")
@ -873,7 +873,7 @@ func TestPullAutoMergeAfterCommitStatusSucceedAndApproval(t *testing.T) {
forkUser := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 5}) forkUser := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 5})
forkSession := loginUser(t, "user5") forkSession := loginUser(t, "user5")
forkedName := "repo1-fork" forkedName := "repo1-fork"
testRepoFork(t, forkSession, "user2", "repo1", forkUser.Name, forkedName, "") testRepoFork(t, forkSession, 0, "user2", "repo1", forkUser.Name, forkedName, "")
testEditFile(t, forkSession, 0, forkUser.Name, forkedName, "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, forkSession, 0, forkUser.Name, forkedName, "master", "README.md", "Hello, World (Edited)\n")
testPullCreate(t, forkSession, forkUser.Name, forkedName, false, "master", "master", "Indexer notifier test pull") testPullCreate(t, forkSession, forkUser.Name, forkedName, false, "master", "master", "Indexer notifier test pull")
@ -1060,7 +1060,7 @@ func TestPullNonMergeForAdminWithBranchProtection(t *testing.T) {
// create a pull request // create a pull request
session := loginUser(t, "user1") // FIXME: don't use admin user for testing session := loginUser(t, "user1") // FIXME: don't use admin user for testing
forkedName := "repo1-1" forkedName := "repo1-1"
testRepoFork(t, session, "user2", "repo1", "user1", forkedName, "") testRepoFork(t, session, 0, "user2", "repo1", "user1", forkedName, "")
testEditFile(t, session, 0, "user1", forkedName, "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", forkedName, "master", "README.md", "Hello, World (Edited)\n")
testPullCreate(t, session, "user1", forkedName, false, "master", "master", "Indexer notifier test pull") testPullCreate(t, session, "user1", forkedName, false, "master", "master", "Indexer notifier test pull")

View File

@ -220,7 +220,7 @@ func TestPullView_GivenApproveOrRejectReviewOnClosedPR(t *testing.T) {
user2Session := loginUser(t, "user2") user2Session := loginUser(t, "user2")
// Have user1 create a fork of repo1. // Have user1 create a fork of repo1.
testRepoFork(t, user1Session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, user1Session, 0, "user2", "repo1", "user1", "repo1", "")
t.Run("Submit approve/reject review on merged PR", func(t *testing.T) { t.Run("Submit approve/reject review on merged PR", func(t *testing.T) {
// Create a merged PR (made by user1) in the upstream repo1. // Create a merged PR (made by user1) in the upstream repo1.

View File

@ -28,7 +28,7 @@ import (
func TestPullCreate_CommitStatus(t *testing.T) { func TestPullCreate_CommitStatus(t *testing.T) {
onGiteaRun(t, func(t *testing.T, u *url.URL) { onGiteaRun(t, func(t *testing.T, u *url.URL) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "status1", "README.md", "status1") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "status1", "README.md", "status1")
req := NewRequestWithValues(t, "POST", "/user1/repo1/compare/master...status1", req := NewRequestWithValues(t, "POST", "/user1/repo1/compare/master...status1",
@ -116,7 +116,7 @@ func TestPullCreate_EmptyChangesWithDifferentCommits(t *testing.T) {
// so we need to have this meta commit also in develop branch. // so we need to have this meta commit also in develop branch.
onGiteaRun(t, func(t *testing.T, u *url.URL) { onGiteaRun(t, func(t *testing.T, u *url.URL) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "status1", "README.md", "status1") testEditFileToNewBranch(t, session, 0, "user1", "repo1", "master", "status1", "README.md", "status1")
testEditFile(t, session, 0, "user1", "repo1", "status1", "README.md", "# repo1\n\nDescription for repo1") testEditFile(t, session, 0, "user1", "repo1", "status1", "README.md", "# repo1\n\nDescription for repo1")
@ -140,7 +140,7 @@ func TestPullCreate_EmptyChangesWithDifferentCommits(t *testing.T) {
func TestPullCreate_EmptyChangesWithSameCommits(t *testing.T) { func TestPullCreate_EmptyChangesWithSameCommits(t *testing.T) {
onGiteaRun(t, func(t *testing.T, u *url.URL) { onGiteaRun(t, func(t *testing.T, u *url.URL) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testCreateBranch(t, session, "user1", "repo1", "branch/master", "status1", http.StatusSeeOther) testCreateBranch(t, session, "user1", "repo1", "branch/master", "status1", http.StatusSeeOther)
req := NewRequestWithValues(t, "POST", "/user1/repo1/compare/master...status1", req := NewRequestWithValues(t, "POST", "/user1/repo1/compare/master...status1",
map[string]string{ map[string]string{

View File

@ -22,7 +22,7 @@ func TestRepoActivity(t *testing.T) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
// Create PRs (1 merged & 2 proposed) // Create PRs (1 merged & 2 proposed)
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n") testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World (Edited)\n")
resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "This is a pull title") resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "This is a pull title")
elem := strings.Split(test.RedirectURL(resp), "/") elem := strings.Split(test.RedirectURL(resp), "/")

View File

@ -241,7 +241,7 @@ func TestRecentlyPushedNewBranches(t *testing.T) {
prepareRecentlyPushedBranchSpecialTest(t, user12Session, repo10, repo10) prepareRecentlyPushedBranchSpecialTest(t, user12Session, repo10, repo10)
// create a fork repo in public org // create a fork repo in public org
testRepoFork(t, user12Session, repo10.OwnerName, repo10.Name, "org25", "org25_fork_repo10", repo10.DefaultBranch) testRepoFork(t, user12Session, 0, repo10.Name, "org25", "org25_fork_repo10", repo10.DefaultBranch, repo10.OwnerName)
orgPublicForkRepo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerID: 25, Name: "org25_fork_repo10"}) orgPublicForkRepo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerID: 25, Name: "org25_fork_repo10"})
prepareRepoPR(t, user12Session, user12Session, repo10, orgPublicForkRepo) prepareRepoPR(t, user12Session, user12Session, repo10, orgPublicForkRepo)
prepareRecentlyPushedBranchTest(t, user12Session, repo10, orgPublicForkRepo) prepareRecentlyPushedBranchTest(t, user12Session, repo10, orgPublicForkRepo)

View File

@ -21,15 +21,15 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )
func testRepoFork(t *testing.T, session *TestSession, ownerName, repoName, forkOwnerName, forkRepoName, forkBranch string) *httptest.ResponseRecorder { func testRepoFork(t *testing.T, session *TestSession, groupID int64, repoName, forkOwnerName, forkRepoName, forkBranch, ownerName string) *httptest.ResponseRecorder {
forkOwner := unittest.AssertExistsAndLoadBean(t, &user_model.User{Name: forkOwnerName}) forkOwner := unittest.AssertExistsAndLoadBean(t, &user_model.User{Name: forkOwnerName})
// Step0: check the existence of the to-fork repo // Step0: check the existence of the to-fork repo
req := NewRequestf(t, "GET", "/%s/%s", forkOwnerName, forkRepoName) req := NewRequestf(t, "GET", "/%s/%s%s", forkOwnerName, maybeGroupSegment(groupID), forkRepoName)
session.MakeRequest(t, req, http.StatusNotFound) session.MakeRequest(t, req, http.StatusNotFound)
// Step1: go to the main page of repo // Step1: go to the main page of repo
req = NewRequestf(t, "GET", "/%s/%s", ownerName, repoName) req = NewRequestf(t, "GET", "/%s/%s%s", ownerName, maybeGroupSegment(groupID), repoName)
resp := session.MakeRequest(t, req, http.StatusOK) resp := session.MakeRequest(t, req, http.StatusOK)
// Step2: click the fork button // Step2: click the fork button
@ -63,13 +63,13 @@ func testRepoFork(t *testing.T, session *TestSession, ownerName, repoName, forkO
func TestRepoFork(t *testing.T) { func TestRepoFork(t *testing.T) {
defer tests.PrepareTestEnv(t)() defer tests.PrepareTestEnv(t)()
session := loginUser(t, "user1") session := loginUser(t, "user1")
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
} }
func TestRepoForkToOrg(t *testing.T) { func TestRepoForkToOrg(t *testing.T) {
defer tests.PrepareTestEnv(t)() defer tests.PrepareTestEnv(t)()
session := loginUser(t, "user2") session := loginUser(t, "user2")
testRepoFork(t, session, "user2", "repo1", "org3", "repo1", "") testRepoFork(t, session, 0, "user2", "repo1", "org3", "repo1", "")
// Check that no more forking is allowed as user2 owns repository // Check that no more forking is allowed as user2 owns repository
// and org3 organization that owner user2 is also now has forked this repository // and org3 organization that owner user2 is also now has forked this repository
@ -93,7 +93,7 @@ func TestForkListLimitedAndPrivateRepos(t *testing.T) {
ownerTeam1, err := org_model.OrgFromUser(limitedOrg).GetOwnerTeam(t.Context()) ownerTeam1, err := org_model.OrgFromUser(limitedOrg).GetOwnerTeam(t.Context())
assert.NoError(t, err) assert.NoError(t, err)
assert.NoError(t, org_service.AddTeamMember(t.Context(), ownerTeam1, user1)) assert.NoError(t, org_service.AddTeamMember(t.Context(), ownerTeam1, user1))
testRepoFork(t, user1Sess, "user2", "repo1", limitedOrg.Name, "repo1", "") testRepoFork(t, user1Sess, 0, "user2", "repo1", limitedOrg.Name, "repo1", "")
// fork to a private org // fork to a private org
user4Sess := loginUser(t, "user4") user4Sess := loginUser(t, "user4")
@ -103,7 +103,7 @@ func TestForkListLimitedAndPrivateRepos(t *testing.T) {
ownerTeam2, err := org_model.OrgFromUser(privateOrg).GetOwnerTeam(t.Context()) ownerTeam2, err := org_model.OrgFromUser(privateOrg).GetOwnerTeam(t.Context())
assert.NoError(t, err) assert.NoError(t, err)
assert.NoError(t, org_service.AddTeamMember(t.Context(), ownerTeam2, user4)) assert.NoError(t, org_service.AddTeamMember(t.Context(), ownerTeam2, user4))
testRepoFork(t, user4Sess, "user2", "repo1", privateOrg.Name, "repo1", "") testRepoFork(t, user4Sess, 0, "user2", "repo1", privateOrg.Name, "repo1", "")
t.Run("Anonymous", func(t *testing.T) { t.Run("Anonymous", func(t *testing.T) {
defer tests.PrintCurrentTest(t)() defer tests.PrintCurrentTest(t)()

View File

@ -61,7 +61,7 @@ func testRepoGenerate(t *testing.T, session *TestSession, templateID, templateOw
body := fmt.Sprintf(`# %s Readme body := fmt.Sprintf(`# %s Readme
Owner: %s Owner: %s
Link: /%s/%s Link: /%s/%s
Clone URL: %s/%s%s.git`, Clone URL: %s/%s.git`,
generateRepoName, generateRepoName,
strings.ToUpper(generateOwnerName), strings.ToUpper(generateOwnerName),
generateOwnerName, generateOwnerName,

View File

@ -64,7 +64,7 @@ func testViewRepoPublic(t *testing.T) {
assert.True(t, repoTopics.HasClass("repo-topic")) assert.True(t, repoTopics.HasClass("repo-topic"))
assert.True(t, repoSummary.HasClass("repository-menu")) assert.True(t, repoSummary.HasClass("repository-menu"))
req = NewRequest(t, "GET", "/org3/repo3") req = NewRequest(t, "GET", "/org3/group/129/repo3")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
session = loginUser(t, "user1") session = loginUser(t, "user1")
@ -74,7 +74,7 @@ func testViewRepoPublic(t *testing.T) {
func testViewRepoWithCache(t *testing.T) { func testViewRepoWithCache(t *testing.T) {
defer tests.PrintCurrentTest(t)() defer tests.PrintCurrentTest(t)()
testView := func(t *testing.T) { testView := func(t *testing.T) {
req := NewRequest(t, "GET", "/org3/repo3") req := NewRequest(t, "GET", "/org3/group/129/repo3")
session := loginUser(t, "user2") session := loginUser(t, "user2")
resp := session.MakeRequest(t, req, http.StatusOK) resp := session.MakeRequest(t, req, http.StatusOK)
@ -145,11 +145,11 @@ func testViewRepoWithCache(t *testing.T) {
func testViewRepoPrivate(t *testing.T) { func testViewRepoPrivate(t *testing.T) {
defer tests.PrintCurrentTest(t)() defer tests.PrintCurrentTest(t)()
req := NewRequest(t, "GET", "/org3/repo3") req := NewRequest(t, "GET", "/org3/group/129/repo3")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
t.Run("OrgMemberAccess", func(t *testing.T) { t.Run("OrgMemberAccess", func(t *testing.T) {
req = NewRequest(t, "GET", "/org3/repo3") req = NewRequest(t, "GET", "/org3/group/129/repo3")
session := loginUser(t, "user4") session := loginUser(t, "user4")
resp := session.MakeRequest(t, req, http.StatusOK) resp := session.MakeRequest(t, req, http.StatusOK)
assert.Contains(t, resp.Body.String(), `<div id="repo-files-table"`) assert.Contains(t, resp.Body.String(), `<div id="repo-files-table"`)
@ -159,22 +159,22 @@ func testViewRepoPrivate(t *testing.T) {
session := loginUser(t, "user1") session := loginUser(t, "user1")
// set unit code to "anonymous read" // set unit code to "anonymous read"
req = NewRequestWithValues(t, "POST", "/org3/repo3/settings/public_access", map[string]string{ req = NewRequestWithValues(t, "POST", "/org3/group/129/repo3/settings/public_access", map[string]string{
"repo-unit-access-" + strconv.Itoa(int(unit.TypeCode)): "anonymous-read", "repo-unit-access-" + strconv.Itoa(int(unit.TypeCode)): "anonymous-read",
}) })
session.MakeRequest(t, req, http.StatusSeeOther) session.MakeRequest(t, req, http.StatusSeeOther)
// try to "anonymous read" (ok) // try to "anonymous read" (ok)
req = NewRequest(t, "GET", "/org3/repo3") req = NewRequest(t, "GET", "/org3/group/129/repo3")
resp := MakeRequest(t, req, http.StatusOK) resp := MakeRequest(t, req, http.StatusOK)
assert.Contains(t, resp.Body.String(), `<span class="ui basic orange label">Public Access</span>`) assert.Contains(t, resp.Body.String(), `<span class="ui basic orange label">Public Access</span>`)
// remove "anonymous read" // remove "anonymous read"
req = NewRequest(t, "POST", "/org3/repo3/settings/public_access") req = NewRequest(t, "POST", "/org3/group/129/repo3/settings/public_access")
session.MakeRequest(t, req, http.StatusSeeOther) session.MakeRequest(t, req, http.StatusSeeOther)
// try to "anonymous read" (not found) // try to "anonymous read" (not found)
req = NewRequest(t, "GET", "/org3/repo3") req = NewRequest(t, "GET", "/org3/group/129/repo3")
MakeRequest(t, req, http.StatusNotFound) MakeRequest(t, req, http.StatusNotFound)
}) })
} }

View File

@ -225,7 +225,7 @@ func Test_WebhookFork(t *testing.T) {
testAPICreateWebhookForRepo(t, session, 0, "user2", "repo1", provider.URL(), "fork") testAPICreateWebhookForRepo(t, session, 0, "user2", "repo1", provider.URL(), "fork")
// 2. trigger the webhook // 2. trigger the webhook
testRepoFork(t, session, "user2", "repo1", "user1", "repo1-fork", "master") testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1-fork", "master")
// 3. validate the webhook is triggered // 3. validate the webhook is triggered
assert.Equal(t, "fork", triggeredEvent) assert.Equal(t, "fork", triggeredEvent)

View File

@ -20,23 +20,23 @@ func TestViewTimetrackingControls(t *testing.T) {
t.Run("Exist", func(t *testing.T) { t.Run("Exist", func(t *testing.T) {
defer tests.PrintCurrentTest(t)() defer tests.PrintCurrentTest(t)()
session := loginUser(t, "user2") session := loginUser(t, "user2")
testViewTimetrackingControls(t, session, "user2", "repo1", "1", true) testViewTimetrackingControls(t, session, 0, "repo1", "1", true, "user2")
}) })
t.Run("Non-exist", func(t *testing.T) { t.Run("Non-exist", func(t *testing.T) {
defer tests.PrintCurrentTest(t)() defer tests.PrintCurrentTest(t)()
session := loginUser(t, "user5") session := loginUser(t, "user5")
testViewTimetrackingControls(t, session, "user2", "repo1", "1", false) testViewTimetrackingControls(t, session, 0, "repo1", "1", false, "user2")
}) })
t.Run("Disabled", func(t *testing.T) { t.Run("Disabled", func(t *testing.T) {
defer tests.PrintCurrentTest(t)() defer tests.PrintCurrentTest(t)()
session := loginUser(t, "user2") session := loginUser(t, "user2")
testViewTimetrackingControls(t, session, "org3", "repo3", "1", false) testViewTimetrackingControls(t, session, 129, "repo3", "1", false, "org3")
}) })
} }
func testViewTimetrackingControls(t *testing.T, session *TestSession, user, repo, issue string, canTrackTime bool) { func testViewTimetrackingControls(t *testing.T, session *TestSession, groupID int64, repo, issue string, canTrackTime bool, user string) {
req := NewRequest(t, "GET", "/"+path.Join(user, repo, "issues", issue)) req := NewRequest(t, "GET", "/"+path.Join(user, repo, "issues", issue))
resp := session.MakeRequest(t, req, http.StatusOK) resp := session.MakeRequest(t, req, http.StatusOK)
@ -45,7 +45,7 @@ func testViewTimetrackingControls(t *testing.T, session *TestSession, user, repo
AssertHTMLElement(t, htmlDoc, ".issue-start-time", canTrackTime) AssertHTMLElement(t, htmlDoc, ".issue-start-time", canTrackTime)
AssertHTMLElement(t, htmlDoc, ".issue-add-time", canTrackTime) AssertHTMLElement(t, htmlDoc, ".issue-add-time", canTrackTime)
issueLink := "/" + path.Join(user, repo, "issues", issue) issueLink := "/" + path.Join(user, maybeGroupSegment(groupID), repo, "issues", issue)
reqStart := NewRequest(t, "POST", path.Join(issueLink, "times", "stopwatch", "start")) reqStart := NewRequest(t, "POST", path.Join(issueLink, "times", "stopwatch", "start"))
if canTrackTime { if canTrackTime {
session.MakeRequest(t, reqStart, http.StatusOK) session.MakeRequest(t, reqStart, http.StatusOK)

View File

@ -27,7 +27,7 @@ func TestAPIWorkflowRun(t *testing.T) {
testAPIWorkflowRunBasic(t, "/api/v1/orgs/org3/actions", "User1", 802, auth_model.AccessTokenScopeReadOrganization, auth_model.AccessTokenScopeReadRepository) testAPIWorkflowRunBasic(t, "/api/v1/orgs/org3/actions", "User1", 802, auth_model.AccessTokenScopeReadOrganization, auth_model.AccessTokenScopeReadRepository)
}) })
t.Run("RepoRuns", func(t *testing.T) { t.Run("RepoRuns", func(t *testing.T) {
testAPIWorkflowRunBasic(t, "/api/v1/repos/org3/repo5/actions", "User2", 802, auth_model.AccessTokenScopeReadRepository) testAPIWorkflowRunBasic(t, "/api/v1/repos/org3/group/139/repo5/actions", "User2", 802, auth_model.AccessTokenScopeReadRepository)
}) })
} }