mirror of
https://github.com/go-gitea/gitea.git
synced 2026-05-06 21:28:23 +02:00
fix remaining tests
This commit is contained in:
parent
3c6e457744
commit
87c0c10a5d
@ -457,7 +457,7 @@ func TestIssueRedirect(t *testing.T) {
|
||||
// Test external tracker with alphanumeric style (for a pull request)
|
||||
req = NewRequest(t, "GET", "/org26/group/41/repo_external_tracker_alpha/issues/1")
|
||||
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
|
||||
// repo1 is a normal repository with issue unit enabled, visit issue 2(which is a pull request)
|
||||
|
||||
@ -66,27 +66,27 @@ func testLimitedOrg(t *testing.T) {
|
||||
// not logged-in user
|
||||
req := NewRequest(t, "GET", "/limited_org")
|
||||
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)
|
||||
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)
|
||||
|
||||
// login non-org member user
|
||||
session := loginUser(t, "user2")
|
||||
req = NewRequest(t, "GET", "/limited_org")
|
||||
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)
|
||||
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)
|
||||
|
||||
// site admin
|
||||
session = loginUser(t, "user1")
|
||||
req = NewRequest(t, "GET", "/limited_org")
|
||||
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)
|
||||
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)
|
||||
}
|
||||
|
||||
@ -94,36 +94,36 @@ func testPrivateOrg(t *testing.T) {
|
||||
// not logged-in user
|
||||
req := NewRequest(t, "GET", "/privated_org")
|
||||
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)
|
||||
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)
|
||||
|
||||
// login non-org member user
|
||||
session := loginUser(t, "user2")
|
||||
req = NewRequest(t, "GET", "/privated_org")
|
||||
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)
|
||||
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)
|
||||
|
||||
// non-org member who is collaborator on repo in private org
|
||||
session = loginUser(t, "user4")
|
||||
req = NewRequest(t, "GET", "/privated_org")
|
||||
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)
|
||||
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)
|
||||
|
||||
// site admin
|
||||
session = loginUser(t, "user1")
|
||||
req = NewRequest(t, "GET", "/privated_org")
|
||||
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)
|
||||
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)
|
||||
}
|
||||
|
||||
|
||||
@ -100,7 +100,7 @@ func TestPullComment(t *testing.T) {
|
||||
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/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("RetargetComment", func(t *testing.T) { testPullCommentRetarget(t, u, session) })
|
||||
|
||||
@ -59,7 +59,7 @@ func TestPullCompare(t *testing.T) {
|
||||
defer tests.PrepareTestEnv(t)()
|
||||
|
||||
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)
|
||||
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")
|
||||
@ -96,7 +96,7 @@ func TestPullCompare_EnableAllowEditsFromMaintainer(t *testing.T) {
|
||||
// user4 forks repo3
|
||||
user4Session := loginUser(t, "user4")
|
||||
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})
|
||||
assert.True(t, forkedRepo.IsPrivate)
|
||||
|
||||
|
||||
@ -137,7 +137,7 @@ func testPullCreateFailure(t *testing.T, session *TestSession, baseRepoOwner, ba
|
||||
func TestPullCreate(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, u *url.URL) {
|
||||
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")
|
||||
repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
|
||||
assert.Equal(t, 3, repo1.NumPulls)
|
||||
@ -197,7 +197,7 @@ func TestPullBranchDelete(t *testing.T) {
|
||||
defer tests.PrepareTestEnv(t)()
|
||||
|
||||
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)
|
||||
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")
|
||||
@ -233,7 +233,7 @@ Check if pull request can be created from base to the fork repository.
|
||||
func TestPullCreatePrFromBaseToFork(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, u *url.URL) {
|
||||
sessionFork := loginUser(t, "user1")
|
||||
testRepoFork(t, sessionFork, "user2", "repo1", "user1", "repo1", "")
|
||||
testRepoFork(t, sessionFork, 0, "user2", "repo1", "user1", "repo1", "")
|
||||
|
||||
// Edit base repository
|
||||
sessionBase := loginUser(t, "user2")
|
||||
@ -347,7 +347,7 @@ func TestCreatePullRequestFromNestedOrgForks(t *testing.T) {
|
||||
func TestPullCreateParallel(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, u *url.URL) {
|
||||
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"})
|
||||
assert.Equal(t, 3, repo1.NumPulls)
|
||||
|
||||
@ -103,7 +103,7 @@ func TestPullMerge(t *testing.T) {
|
||||
hookTasksLenBefore := len(hookTasks)
|
||||
|
||||
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")
|
||||
|
||||
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
|
||||
@ -140,7 +140,7 @@ func TestPullRebase(t *testing.T) {
|
||||
hookTasksLenBefore := len(hookTasks)
|
||||
|
||||
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")
|
||||
|
||||
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
|
||||
@ -177,7 +177,7 @@ func TestPullRebaseMerge(t *testing.T) {
|
||||
hookTasksLenBefore := len(hookTasks)
|
||||
|
||||
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")
|
||||
|
||||
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
|
||||
@ -214,7 +214,7 @@ func TestPullSquash(t *testing.T) {
|
||||
hookTasksLenBefore := len(hookTasks)
|
||||
|
||||
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")
|
||||
|
||||
@ -240,7 +240,7 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
|
||||
hookTasksLenBefore := len(hookTasks)
|
||||
|
||||
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")
|
||||
|
||||
@ -280,7 +280,7 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
|
||||
func TestPullCleanUpAfterMerge(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
|
||||
repo := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{OwnerName: "user2", Name: "repo1"})
|
||||
@ -331,7 +331,7 @@ func TestPullCleanUpAfterMerge(t *testing.T) {
|
||||
func TestCantMergeWorkInProgress(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
|
||||
resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "[wip] This is a pull title")
|
||||
@ -350,7 +350,7 @@ func TestCantMergeWorkInProgress(t *testing.T) {
|
||||
func TestCantMergeConflict(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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", "base", "README.md", "Hello, World (Edited Twice)\n")
|
||||
|
||||
@ -392,7 +392,7 @@ func TestCantMergeConflict(t *testing.T) {
|
||||
func TestCantMergeUnrelated(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
|
||||
// Now we want to create a commit on a branch that is totally unrelated to our current head
|
||||
@ -484,7 +484,7 @@ func TestCantMergeUnrelated(t *testing.T) {
|
||||
func TestFastForwardOnlyMerge(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
|
||||
// Use API to create a pr from update to master
|
||||
@ -519,7 +519,7 @@ func TestFastForwardOnlyMerge(t *testing.T) {
|
||||
func TestCantFastForwardOnlyMergeDiverging(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
testEditFile(t, session, 0, "user1", "repo1", "master", "README.md", "Hello, World 2\n")
|
||||
|
||||
@ -557,7 +557,7 @@ func TestPullRetargetChildOnBranchDelete(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
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)")
|
||||
|
||||
respBasePR := testPullCreate(t, session, "user2", "repo1", true, "master", "base-pr", "Base Pull Request")
|
||||
@ -593,7 +593,7 @@ func TestPullRetargetChildOnBranchDelete(t *testing.T) {
|
||||
func TestPullDontRetargetChildOnWrongRepo(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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", "base-pr", "child-pr", "README.md", "Hello, World\n(Edited - TestPullDontRetargetChildOnWrongRepo - base PR)\n(Edited - TestPullDontRetargetChildOnWrongRepo - child PR)")
|
||||
|
||||
@ -633,7 +633,7 @@ func TestPullDontRetargetChildOnWrongRepo(t *testing.T) {
|
||||
func TestPullRequestMergedWithNoPermissionDeleteBranch(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
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")
|
||||
|
||||
respBasePR := testPullCreate(t, session, "user4", "repo1", false, "master", "base-pr", "Base Pull Request")
|
||||
@ -658,7 +658,7 @@ func TestPullMergeIndexerNotifier(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, giteaURL *url.URL) {
|
||||
// create a pull request
|
||||
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")
|
||||
createPullResp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "Indexer notifier test pull")
|
||||
|
||||
@ -723,7 +723,7 @@ func TestPullAutoMergeAfterCommitStatusSucceed(t *testing.T) {
|
||||
session := loginUser(t, "user1") // FIXME: don't use admin user for testing
|
||||
user1 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 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")
|
||||
testPullCreate(t, session, "user1", forkedName, false, "master", "master", "Indexer notifier test pull")
|
||||
|
||||
@ -806,7 +806,7 @@ func TestPullAutoMergeAfterCommitStatusSucceedAndApproval(t *testing.T) {
|
||||
forkUser := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 5})
|
||||
forkSession := loginUser(t, "user5")
|
||||
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")
|
||||
testPullCreate(t, forkSession, forkUser.Name, forkedName, false, "master", "master", "Indexer notifier test pull")
|
||||
|
||||
@ -993,7 +993,7 @@ func TestPullNonMergeForAdminWithBranchProtection(t *testing.T) {
|
||||
// create a pull request
|
||||
session := loginUser(t, "user1") // FIXME: don't use admin user for testing
|
||||
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")
|
||||
testPullCreate(t, session, "user1", forkedName, false, "master", "master", "Indexer notifier test pull")
|
||||
|
||||
|
||||
@ -220,7 +220,7 @@ func TestPullView_GivenApproveOrRejectReviewOnClosedPR(t *testing.T) {
|
||||
user2Session := loginUser(t, "user2")
|
||||
|
||||
// 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) {
|
||||
// Create a merged PR (made by user1) in the upstream repo1.
|
||||
|
||||
@ -28,7 +28,7 @@ import (
|
||||
func TestPullCreate_CommitStatus(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, u *url.URL) {
|
||||
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")
|
||||
|
||||
url := path.Join("user1", "repo1", "compare", "master...status1")
|
||||
@ -117,7 +117,7 @@ func TestPullCreate_EmptyChangesWithDifferentCommits(t *testing.T) {
|
||||
// so we need to have this meta commit also in develop branch.
|
||||
onGiteaRun(t, func(t *testing.T, u *url.URL) {
|
||||
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")
|
||||
testEditFile(t, session, 0, "user1", "repo1", "status1", "README.md", "# repo1\n\nDescription for repo1")
|
||||
|
||||
@ -141,7 +141,7 @@ func TestPullCreate_EmptyChangesWithDifferentCommits(t *testing.T) {
|
||||
func TestPullCreate_EmptyChangesWithSameCommits(t *testing.T) {
|
||||
onGiteaRun(t, func(t *testing.T, u *url.URL) {
|
||||
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)
|
||||
url := path.Join("user1", "repo1", "compare", "master...status1")
|
||||
req := NewRequestWithValues(t, "POST", url,
|
||||
|
||||
@ -22,7 +22,7 @@ func TestRepoActivity(t *testing.T) {
|
||||
session := loginUser(t, "user1")
|
||||
|
||||
// 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")
|
||||
resp := testPullCreate(t, session, "user1", "repo1", false, "master", "master", "This is a pull title")
|
||||
elem := strings.Split(test.RedirectURL(resp), "/")
|
||||
|
||||
@ -241,7 +241,7 @@ func TestRecentlyPushedNewBranches(t *testing.T) {
|
||||
prepareRecentlyPushedBranchSpecialTest(t, user12Session, repo10, repo10)
|
||||
|
||||
// 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"})
|
||||
prepareRepoPR(t, user12Session, user12Session, repo10, orgPublicForkRepo)
|
||||
prepareRecentlyPushedBranchTest(t, user12Session, repo10, orgPublicForkRepo)
|
||||
|
||||
@ -21,15 +21,15 @@ import (
|
||||
"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})
|
||||
|
||||
// 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)
|
||||
|
||||
// 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)
|
||||
|
||||
// Step2: click the fork button
|
||||
@ -63,13 +63,13 @@ func testRepoFork(t *testing.T, session *TestSession, ownerName, repoName, forkO
|
||||
func TestRepoFork(t *testing.T) {
|
||||
defer tests.PrepareTestEnv(t)()
|
||||
session := loginUser(t, "user1")
|
||||
testRepoFork(t, session, "user2", "repo1", "user1", "repo1", "")
|
||||
testRepoFork(t, session, 0, "user2", "repo1", "user1", "repo1", "")
|
||||
}
|
||||
|
||||
func TestRepoForkToOrg(t *testing.T) {
|
||||
defer tests.PrepareTestEnv(t)()
|
||||
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
|
||||
// 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())
|
||||
assert.NoError(t, err)
|
||||
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
|
||||
user4Sess := loginUser(t, "user4")
|
||||
@ -103,7 +103,7 @@ func TestForkListLimitedAndPrivateRepos(t *testing.T) {
|
||||
ownerTeam2, err := org_model.OrgFromUser(privateOrg).GetOwnerTeam(t.Context())
|
||||
assert.NoError(t, err)
|
||||
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) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
|
||||
@ -61,7 +61,7 @@ func testRepoGenerate(t *testing.T, session *TestSession, templateID, templateOw
|
||||
body := fmt.Sprintf(`# %s Readme
|
||||
Owner: %s
|
||||
Link: /%s/%s
|
||||
Clone URL: %s/%s%s.git`,
|
||||
Clone URL: %s/%s.git`,
|
||||
generateRepoName,
|
||||
strings.ToUpper(generateOwnerName),
|
||||
generateOwnerName,
|
||||
|
||||
@ -64,7 +64,7 @@ func testViewRepoPublic(t *testing.T) {
|
||||
assert.True(t, repoTopics.HasClass("repo-topic"))
|
||||
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)
|
||||
|
||||
session = loginUser(t, "user1")
|
||||
@ -74,7 +74,7 @@ func testViewRepoPublic(t *testing.T) {
|
||||
func testViewRepoWithCache(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
testView := func(t *testing.T) {
|
||||
req := NewRequest(t, "GET", "/org3/repo3")
|
||||
req := NewRequest(t, "GET", "/org3/group/129/repo3")
|
||||
session := loginUser(t, "user2")
|
||||
resp := session.MakeRequest(t, req, http.StatusOK)
|
||||
|
||||
@ -145,11 +145,11 @@ func testViewRepoWithCache(t *testing.T) {
|
||||
func testViewRepoPrivate(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
|
||||
req := NewRequest(t, "GET", "/org3/repo3")
|
||||
req := NewRequest(t, "GET", "/org3/group/129/repo3")
|
||||
MakeRequest(t, req, http.StatusNotFound)
|
||||
|
||||
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")
|
||||
resp := session.MakeRequest(t, req, http.StatusOK)
|
||||
assert.Contains(t, resp.Body.String(), `<div id="repo-files-table"`)
|
||||
@ -159,22 +159,22 @@ func testViewRepoPrivate(t *testing.T) {
|
||||
session := loginUser(t, "user1")
|
||||
|
||||
// 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",
|
||||
})
|
||||
session.MakeRequest(t, req, http.StatusSeeOther)
|
||||
|
||||
// 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)
|
||||
assert.Contains(t, resp.Body.String(), `<span class="ui basic orange label">Public Access</span>`)
|
||||
|
||||
// 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)
|
||||
|
||||
// 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)
|
||||
})
|
||||
}
|
||||
|
||||
@ -221,7 +221,7 @@ func Test_WebhookFork(t *testing.T) {
|
||||
testAPICreateWebhookForRepo(t, session, 0, "user2", "repo1", provider.URL(), "fork")
|
||||
|
||||
// 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
|
||||
assert.Equal(t, "fork", triggeredEvent)
|
||||
|
||||
@ -20,23 +20,23 @@ func TestViewTimetrackingControls(t *testing.T) {
|
||||
t.Run("Exist", func(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
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) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
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) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
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))
|
||||
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-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"))
|
||||
if canTrackTime {
|
||||
session.MakeRequest(t, reqStart, http.StatusOK)
|
||||
|
||||
@ -27,7 +27,7 @@ func TestAPIWorkflowRun(t *testing.T) {
|
||||
testAPIWorkflowRunBasic(t, "/api/v1/orgs/org3/actions", "User1", 802, auth_model.AccessTokenScopeReadOrganization, auth_model.AccessTokenScopeReadRepository)
|
||||
})
|
||||
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)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user