@ -113,8 +113,16 @@ func TestPullMerge(t *testing.T) {
testRepoFork ( t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
testEditFile ( t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n" )
repo := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { OwnerName : "user2" , Name : "repo1" } )
assert . Equal ( t , 3 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
resp := testPullCreate ( t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 4 , repo . NumOpenPulls )
elem := strings . Split ( test . RedirectURL ( resp ) , "/" )
assert . Equal ( t , "pulls" , elem [ 3 ] )
testPullMerge ( t , session , elem [ 1 ] , elem [ 2 ] , elem [ 4 ] , MergeOptions {
@ -122,6 +130,10 @@ func TestPullMerge(t *testing.T) {
DeleteBranch : false ,
} )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
hookTasks , err = webhook . HookTasks ( t . Context ( ) , 1 , 1 )
assert . NoError ( t , err )
assert . Len ( t , hookTasks , hookTasksLenBefore + 1 )
@ -138,8 +150,16 @@ func TestPullRebase(t *testing.T) {
testRepoFork ( t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
testEditFile ( t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n" )
repo := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { OwnerName : "user2" , Name : "repo1" } )
assert . Equal ( t , 3 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
resp := testPullCreate ( t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 4 , repo . NumOpenPulls )
elem := strings . Split ( test . RedirectURL ( resp ) , "/" )
assert . Equal ( t , "pulls" , elem [ 3 ] )
testPullMerge ( t , session , elem [ 1 ] , elem [ 2 ] , elem [ 4 ] , MergeOptions {
@ -147,6 +167,10 @@ func TestPullRebase(t *testing.T) {
DeleteBranch : false ,
} )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
hookTasks , err = webhook . HookTasks ( t . Context ( ) , 1 , 1 )
assert . NoError ( t , err )
assert . Len ( t , hookTasks , hookTasksLenBefore + 1 )
@ -163,8 +187,16 @@ func TestPullRebaseMerge(t *testing.T) {
testRepoFork ( t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
testEditFile ( t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n" )
repo := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { OwnerName : "user2" , Name : "repo1" } )
assert . Equal ( t , 3 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
resp := testPullCreate ( t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 4 , repo . NumOpenPulls )
elem := strings . Split ( test . RedirectURL ( resp ) , "/" )
assert . Equal ( t , "pulls" , elem [ 3 ] )
testPullMerge ( t , session , elem [ 1 ] , elem [ 2 ] , elem [ 4 ] , MergeOptions {
@ -172,6 +204,10 @@ func TestPullRebaseMerge(t *testing.T) {
DeleteBranch : false ,
} )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
hookTasks , err = webhook . HookTasks ( t . Context ( ) , 1 , 1 )
assert . NoError ( t , err )
assert . Len ( t , hookTasks , hookTasksLenBefore + 1 )
@ -215,6 +251,10 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
testEditFile ( t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited)\n" )
testEditFile ( t , session , "user1" , "repo1" , "master" , "README.md" , "Hello, World (Edited!)\n" )
repo := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { OwnerName : "user2" , Name : "repo1" } )
assert . Equal ( t , 3 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
resp := testPullCreate ( t , session , "user1" , "repo1" , false , "master" , "master" , "This is a pull title" )
repo1 := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { OwnerName : "user1" , Name : "repo1" } )
@ -224,11 +264,19 @@ func TestPullSquashWithHeadCommitID(t *testing.T) {
elem := strings . Split ( test . RedirectURL ( resp ) , "/" )
assert . Equal ( t , "pulls" , elem [ 3 ] )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 4 , repo . NumOpenPulls )
testPullMerge ( t , session , elem [ 1 ] , elem [ 2 ] , elem [ 4 ] , MergeOptions {
Style : repo_model . MergeStyleSquash ,
DeleteBranch : false ,
HeadCommitID : headBranch . CommitID ,
} )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
hookTasks , err = webhook . HookTasks ( t . Context ( ) , 1 , 1 )
assert . NoError ( t , err )
@ -242,15 +290,28 @@ func TestPullCleanUpAfterMerge(t *testing.T) {
testRepoFork ( t , session , "user2" , "repo1" , "user1" , "repo1" , "" )
testEditFileToNewBranch ( t , session , "user1" , "repo1" , "master" , "feature/test" , "README.md" , "Hello, World (Edited - TestPullCleanUpAfterMerge)\n" )
repo := unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { OwnerName : "user2" , Name : "repo1" } )
assert . Equal ( t , 3 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
resp := testPullCreate ( t , session , "user1" , "repo1" , false , "master" , "feature/test" , "This is a pull title" )
elem := strings . Split ( test . RedirectURL ( resp ) , "/" )
assert . Equal ( t , "pulls" , elem [ 3 ] )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 4 , repo . NumOpenPulls )
testPullMerge ( t , session , elem [ 1 ] , elem [ 2 ] , elem [ 4 ] , MergeOptions {
Style : repo_model . MergeStyleMerge ,
DeleteBranch : false ,
} )
repo = unittest . AssertExistsAndLoadBean ( t , & repo_model . Repository { ID : repo . ID } )
assert . Equal ( t , 4 , repo . NumPulls )
assert . Equal ( t , 3 , repo . NumOpenPulls )
// Check PR branch deletion
resp = testPullCleanUp ( t , session , elem [ 1 ] , elem [ 2 ] , elem [ 4 ] )
respJSON := struct {