You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

rename_branch_test.go 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. // Copyright 2021 The Gitea Authors. All rights reserved.
  2. // SPDX-License-Identifier: MIT
  3. package integration
  4. import (
  5. "net/http"
  6. "testing"
  7. git_model "code.gitea.io/gitea/models/git"
  8. repo_model "code.gitea.io/gitea/models/repo"
  9. "code.gitea.io/gitea/models/unittest"
  10. "code.gitea.io/gitea/tests"
  11. "github.com/stretchr/testify/assert"
  12. )
  13. func TestRenameBranch(t *testing.T) {
  14. defer tests.PrepareTestEnv(t)()
  15. unittest.AssertExistsAndLoadBean(t, &git_model.Branch{RepoID: 1, Name: "master"})
  16. // get branch setting page
  17. session := loginUser(t, "user2")
  18. req := NewRequest(t, "GET", "/user2/repo1/settings/branches")
  19. resp := session.MakeRequest(t, req, http.StatusOK)
  20. htmlDoc := NewHTMLParser(t, resp.Body)
  21. postData := map[string]string{
  22. "_csrf": htmlDoc.GetCSRF(),
  23. "from": "master",
  24. "to": "main",
  25. }
  26. req = NewRequestWithValues(t, "POST", "/user2/repo1/settings/rename_branch", postData)
  27. session.MakeRequest(t, req, http.StatusSeeOther)
  28. // check new branch link
  29. req = NewRequestWithValues(t, "GET", "/user2/repo1/src/branch/main/README.md", postData)
  30. session.MakeRequest(t, req, http.StatusOK)
  31. // check old branch link
  32. req = NewRequestWithValues(t, "GET", "/user2/repo1/src/branch/master/README.md", postData)
  33. resp = session.MakeRequest(t, req, http.StatusSeeOther)
  34. location := resp.Header().Get("Location")
  35. assert.Equal(t, "/user2/repo1/src/branch/main/README.md", location)
  36. // check db
  37. repo1 := unittest.AssertExistsAndLoadBean(t, &repo_model.Repository{ID: 1})
  38. assert.Equal(t, "main", repo1.DefaultBranch)
  39. }