@@ -67,15 +67,15 @@ func TestPullView_CodeOwner(t *testing.T) {
6767 {
6868 Operation : "create" ,
6969 TreePath : "CODEOWNERS" ,
70- ContentReader : strings .NewReader ("README.md @user5\n " ),
70+ ContentReader : strings .NewReader ("README.md @user5\n user8-file.md @user8 \ n " ),
7171 },
7272 },
7373 })
7474 assert .NoError (t , err )
7575
7676 t .Run ("First Pull Request" , func (t * testing.T ) {
7777 // create a new branch to prepare for pull request
78- _ , err = files_service .ChangeRepoFiles (db .DefaultContext , repo , user2 , & files_service.ChangeRepoFilesOptions {
78+ resp1 , err : = files_service .ChangeRepoFiles (db .DefaultContext , repo , user2 , & files_service.ChangeRepoFilesOptions {
7979 NewBranch : "codeowner-basebranch" ,
8080 Files : []* files_service.ChangeRepoFile {
8181 {
@@ -95,7 +95,36 @@ func TestPullView_CodeOwner(t *testing.T) {
9595 unittest .AssertExistsAndLoadBean (t , & issues_model.Review {IssueID : pr .IssueID , Type : issues_model .ReviewTypeRequest , ReviewerID : 5 })
9696 assert .NoError (t , pr .LoadIssue (db .DefaultContext ))
9797
98- err := issue_service .ChangeTitle (db .DefaultContext , pr .Issue , user2 , "[WIP] Test Pull Request" )
98+ reviewNotifiers , err := issue_service .PullRequestCodeOwnersReview (db .DefaultContext , pr )
99+ assert .NoError (t , err )
100+ assert .Len (t , reviewNotifiers , 1 )
101+ assert .EqualValues (t , 5 , reviewNotifiers [0 ].Reviewer .ID )
102+
103+ // update the file on the pr branch
104+ resp2 , err := files_service .ChangeRepoFiles (db .DefaultContext , repo , user2 , & files_service.ChangeRepoFilesOptions {
105+ OldBranch : "codeowner-basebranch" ,
106+ Files : []* files_service.ChangeRepoFile {
107+ {
108+ Operation : "create" ,
109+ TreePath : "user8-file.md" ,
110+ ContentReader : strings .NewReader ("# This is a new project2\n " ),
111+ },
112+ },
113+ })
114+ assert .NoError (t , err )
115+
116+ reviewNotifiers , err = issue_service .PullRequestCodeOwnersReview (db .DefaultContext , pr )
117+ assert .NoError (t , err )
118+ assert .Len (t , reviewNotifiers , 2 )
119+ assert .EqualValues (t , 5 , reviewNotifiers [0 ].Reviewer .ID )
120+ assert .EqualValues (t , 8 , reviewNotifiers [1 ].Reviewer .ID )
121+
122+ reviewNotifiers , err = issue_service .PullRequestCodeOwnersReviewSpecialCommits (db .DefaultContext , pr , resp1 .Commit .SHA , resp2 .Commit .SHA )
123+ assert .NoError (t , err )
124+ assert .Len (t , reviewNotifiers , 1 )
125+ assert .EqualValues (t , 8 , reviewNotifiers [0 ].Reviewer .ID )
126+
127+ err = issue_service .ChangeTitle (db .DefaultContext , pr .Issue , user2 , "[WIP] Test Pull Request" )
99128 assert .NoError (t , err )
100129 prUpdated1 := unittest .AssertExistsAndLoadBean (t , & issues_model.PullRequest {ID : pr .ID })
101130 assert .NoError (t , prUpdated1 .LoadIssue (db .DefaultContext ))
@@ -140,6 +169,11 @@ func TestPullView_CodeOwner(t *testing.T) {
140169
141170 pr := unittest .AssertExistsAndLoadBean (t , & issues_model.PullRequest {BaseRepoID : repo .ID , HeadBranch : "codeowner-basebranch2" })
142171 unittest .AssertExistsAndLoadBean (t , & issues_model.Review {IssueID : pr .IssueID , Type : issues_model .ReviewTypeRequest , ReviewerID : 8 })
172+
173+ reviewNotifiers , err := issue_service .PullRequestCodeOwnersReview (db .DefaultContext , pr )
174+ assert .NoError (t , err )
175+ assert .Len (t , reviewNotifiers , 1 )
176+ assert .EqualValues (t , 8 , reviewNotifiers [0 ].Reviewer .ID )
143177 })
144178
145179 t .Run ("Forked Repo Pull Request" , func (t * testing.T ) {
0 commit comments