@@ -403,6 +403,62 @@ func TestListPullRequestReviewComments(t *testing.T) {
403403TestListPullRequestComments (t )
404404}
405405
406+ func TestAzureRepos_ListPullRequestReviews (t * testing.T ) {
407+ ctx := context .Background ()
408+ repository := "repo"
409+ pullRequestID := 1
410+ mockResponse := struct {
411+ Count int
412+ Value []git.IdentityRefWithVote
413+ }{
414+ Count :2 ,
415+ Value : []git.IdentityRefWithVote {
416+ {
417+ ReviewerUrl :vcsutils .PointerOf ("https://dev.azure.com/owner/project/_apis/git/repositories/repo/pullRequests/1/reviewers/1" ),
418+ Vote :vcsutils .PointerOf (10 ),
419+ DisplayName :vcsutils .PointerOf ("Reviewer One" ),
420+ Id :vcsutils .PointerOf ("1" ),
421+ },
422+ {
423+ ReviewerUrl :vcsutils .PointerOf ("https://dev.azure.com/owner/project/_apis/git/repositories/repo/pullRequests/1/reviewers/2" ),
424+ Vote :vcsutils .PointerOf (- 5 ),
425+ DisplayName :vcsutils .PointerOf ("Reviewer Two" ),
426+ Id :vcsutils .PointerOf ("2" ),
427+ },
428+ },
429+ }
430+ responseBytes ,err := json .Marshal (mockResponse )
431+ assert .NoError (t ,err )
432+
433+ client ,cleanUp := createServerAndClient (t ,vcsutils .AzureRepos ,true ,responseBytes ,
434+ fmt .Sprintf ("/_apis/git/repositories/%s/pullRequests/%d/reviewers" ,repository ,pullRequestID ),createAzureReposHandler )
435+ defer cleanUp ()
436+
437+ result ,err := client .ListPullRequestReviews (ctx ,owner ,repository ,pullRequestID )
438+ assert .NoError (t ,err )
439+ assert .Len (t ,result ,2 )
440+ assert .Equal (t ,PullRequestReviewDetails {
441+ ID :1 ,
442+ Reviewer :"Reviewer One" ,
443+ State :"APPROVED" ,
444+ },result [0 ])
445+ assert .Equal (t ,PullRequestReviewDetails {
446+ ID :2 ,
447+ Reviewer :"Reviewer Two" ,
448+ State :"CHANGES_REQUESTED" ,
449+ },result [1 ])
450+ }
451+ func TestAzureRepos_ListPullRequestsAssociatedWithCommit (t * testing.T ) {
452+ ctx := context .Background ()
453+ repository := "repo"
454+ commitSHA := "commitSHA"
455+ client ,cleanUp := createServerAndClient (t ,vcsutils .AzureRepos ,true ,nil ,
456+ fmt .Sprintf ("/_apis/git/repositories/%s/commits/%s/pullRequests" ,repository ,commitSHA ),createAzureReposHandler )
457+ defer cleanUp ()
458+
459+ _ ,err := client .ListPullRequestsAssociatedWithCommit (ctx ,owner ,repository ,commitSHA )
460+ assert .Error (t ,err )
461+ }
406462func TestListPullRequestComments (t * testing.T ) {
407463type ListPullRequestCommentsResponse struct {
408464Value []git.GitPullRequestCommentThread