2021-10-08 20:03:04 +03:00
// Copyright 2021 The Gitea Authors. All rights reserved.
2022-11-27 21:20:29 +03:00
// SPDX-License-Identifier: MIT
2021-10-08 20:03:04 +03:00
2022-09-02 22:18:23 +03:00
package integration
2021-10-08 20:03:04 +03:00
import (
"net/http"
"testing"
2023-06-29 13:03:20 +03:00
git_model "code.gitea.io/gitea/models/git"
2021-12-10 04:27:50 +03:00
repo_model "code.gitea.io/gitea/models/repo"
2021-11-16 11:53:21 +03:00
"code.gitea.io/gitea/models/unittest"
2023-06-29 13:03:20 +03:00
"code.gitea.io/gitea/tests"
2021-11-17 15:34:35 +03:00
2021-10-08 20:03:04 +03:00
"github.com/stretchr/testify/assert"
)
func TestRenameBranch ( t * testing . T ) {
2023-06-29 13:03:20 +03:00
defer tests . PrepareTestEnv ( t ) ( )
unittest . AssertExistsAndLoadBean ( t , & git_model . Branch { RepoID : 1 , Name : "master" } )
2021-10-08 20:03:04 +03:00
// get branch setting page
session := loginUser ( t , "user2" )
req := NewRequest ( t , "GET" , "/user2/repo1/settings/branches" )
resp := session . MakeRequest ( t , req , http . StatusOK )
htmlDoc := NewHTMLParser ( t , resp . Body )
postData := map [ string ] string {
"_csrf" : htmlDoc . GetCSRF ( ) ,
"from" : "master" ,
"to" : "main" ,
}
req = NewRequestWithValues ( t , "POST" , "/user2/repo1/settings/rename_branch" , postData )
2022-03-23 07:54:07 +03:00
session . MakeRequest ( t , req , http . StatusSeeOther )
2021-10-08 20:03:04 +03:00
// check new branch link
req = NewRequestWithValues ( t , "GET" , "/user2/repo1/src/branch/main/README.md" , postData )
session . MakeRequest ( t , req , http . StatusOK )
// check old branch link
req = NewRequestWithValues ( t , "GET" , "/user2/repo1/src/branch/master/README.md" , postData )
2022-03-23 07:54:07 +03:00
resp = session . MakeRequest ( t , req , http . StatusSeeOther )
2022-12-03 01:06:23 +03:00
location := resp . Header ( ) . Get ( "Location" )
2021-10-08 20:03:04 +03:00
assert . Equal ( t , "/user2/repo1/src/branch/main/README.md" , location )
// check db
2022-08-16 05:22:25 +03:00
repo1 := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : 1 } )
2021-10-08 20:03:04 +03:00
assert . Equal ( t , "main" , repo1 . DefaultBranch )
}