@@ -6,6 +6,7 @@ import { listPullRequests } from './list-pull-requests';
66import { getPullRequestComments } from './get-pull-request-comments' ;
77import { addPullRequestComment } from './add-pull-request-comment' ;
88import { AddPullRequestCommentSchema } from './schemas' ;
9+ import { getPullRequestChanges } from './get-pull-request-changes' ;
910
1011// Mock the imported modules
1112jest . mock ( './create-pull-request' , ( ) => ( {
@@ -24,6 +25,10 @@ jest.mock('./add-pull-request-comment', () => ({
2425 addPullRequestComment : jest . fn ( ) ,
2526} ) ) ;
2627
28+ jest . mock ( './get-pull-request-changes' , ( ) => ( {
29+ getPullRequestChanges : jest . fn ( ) ,
30+ } ) ) ;
31+
2732describe ( 'Pull Requests Request Handlers' , ( ) => {
2833 const mockConnection = { } as WebApi ;
2934
@@ -34,6 +39,7 @@ describe('Pull Requests Request Handlers', () => {
3439 'list_pull_requests' ,
3540 'get_pull_request_comments' ,
3641 'add_pull_request_comment' ,
42+ 'get_pull_request_changes' ,
3743 ] ;
3844 validTools . forEach ( ( tool ) => {
3945 const request = {
@@ -216,6 +222,25 @@ describe('Pull Requests Request Handlers', () => {
216222 AddPullRequestCommentSchema . parse = originalParse ;
217223 } ) ;
218224
225+ it ( 'should handle get_pull_request_changes request' , async ( ) => {
226+ const mockResult = { changes : { changeEntries : [ ] } , evaluations : [ ] } ;
227+ ( getPullRequestChanges as jest . Mock ) . mockResolvedValue ( mockResult ) ;
228+
229+ const request = {
230+ params : {
231+ name : 'get_pull_request_changes' ,
232+ arguments : { repositoryId : 'test-repo' , pullRequestId : 1 } ,
233+ } ,
234+ method : 'tools/call' ,
235+ } as CallToolRequest ;
236+
237+ const response = await handlePullRequestsRequest ( mockConnection , request ) ;
238+ expect ( JSON . parse ( response . content [ 0 ] . text as string ) ) . toEqual (
239+ mockResult ,
240+ ) ;
241+ expect ( getPullRequestChanges ) . toHaveBeenCalled ( ) ;
242+ } ) ;
243+
219244 it ( 'should throw error for unknown tool' , async ( ) => {
220245 const request = {
221246 params : {
0 commit comments