@@ -21,11 +21,13 @@ import * as vscode from 'vscode';
2121import { TestDataHandler } from '../../../__test__/test-data' ;
2222import { MergeSessionCoordinatorImpl } from './merge-session-coordinator' ;
2323import * as fsUtils from '../../../utils/fs-utils' ;
24+ import { commandsProviderFactory , MockCommandsProvider } from '../../../vscode-api/commands-provider.factories' ;
25+ import { REFRESH_COMMAND_ID } from '../../../manifest' ;
2426
2527describe ( 'MergeSessionCoordinator' , ( ) => {
2628 const testDataHandler = new TestDataHandler ( ) ;
2729 let tmpDir : string ;
28- let solutionManager : { refresh : jest . Mock < Promise < void > , [ ] > } ;
30+ let commandsProvider : MockCommandsProvider ;
2931 let coordinator : MergeSessionCoordinatorImpl ;
3032 let saveEmitter : vscode . EventEmitter < vscode . TextDocument > ;
3133
@@ -39,11 +41,10 @@ describe('MergeSessionCoordinator', () => {
3941 saveEmitter = new vscode . EventEmitter < vscode . TextDocument > ( ) ;
4042 ( vscode . workspace as unknown as { onDidSaveTextDocument : vscode . Event < vscode . TextDocument > } ) . onDidSaveTextDocument = saveEmitter . event ;
4143
42- solutionManager = {
43- refresh : jest . fn ( ) . mockResolvedValue ( ) ,
44- } ;
44+ commandsProvider = commandsProviderFactory ( ) ;
45+ commandsProvider . executeCommand . mockResolvedValue ( undefined ) ;
4546
46- coordinator = new MergeSessionCoordinatorImpl ( solutionManager ) ;
47+ coordinator = new MergeSessionCoordinatorImpl ( commandsProvider ) ;
4748
4849 await coordinator . activate ( { subscriptions : [ ] } as unknown as vscode . ExtensionContext ) ;
4950 } ) ;
@@ -76,7 +77,8 @@ describe('MergeSessionCoordinator', () => {
7677 expect ( fsUtils . fileExists ( update ) ) . toBeTruthy ( ) ;
7778 expect ( fsUtils . fileExists ( `${ local } .bak` ) ) . toBeFalsy ( ) ;
7879
79- expect ( solutionManager . refresh ) . toHaveBeenCalledTimes ( 1 ) ;
80+ expect ( commandsProvider . executeCommand ) . toHaveBeenCalledTimes ( 1 ) ;
81+ expect ( commandsProvider . executeCommand ) . toHaveBeenCalledWith ( REFRESH_COMMAND_ID ) ;
8082 } ) ;
8183
8284 it ( 'ignores save events for unrelated files' , async ( ) => {
@@ -96,7 +98,7 @@ describe('MergeSessionCoordinator', () => {
9698 handleDidSaveTextDocument : ( document : vscode . TextDocument ) => Promise < void >
9799 } ) . handleDidSaveTextDocument ( { uri : { fsPath : path . join ( tmpDir , 'other.c' ) } } as vscode . TextDocument ) ;
98100
99- expect ( solutionManager . refresh ) . not . toHaveBeenCalled ( ) ;
101+ expect ( commandsProvider . executeCommand ) . not . toHaveBeenCalled ( ) ;
100102 expect ( fsUtils . fileExists ( merged ) ) . toBeTruthy ( ) ;
101103 } ) ;
102104
@@ -118,7 +120,7 @@ describe('MergeSessionCoordinator', () => {
118120 handleDidSaveTextDocument : ( document : vscode . TextDocument ) => Promise < void >
119121 } ) . handleDidSaveTextDocument ( { uri : { fsPath : merged } } as vscode . TextDocument ) ;
120122
121- expect ( solutionManager . refresh ) . not . toHaveBeenCalled ( ) ;
123+ expect ( commandsProvider . executeCommand ) . not . toHaveBeenCalled ( ) ;
122124 expect ( fsUtils . fileExists ( merged ) ) . toBeTruthy ( ) ;
123125 } ) ;
124126
@@ -138,6 +140,7 @@ describe('MergeSessionCoordinator', () => {
138140
139141 expect ( fsUtils . fileExists ( local ) ) . toBeTruthy ( ) ;
140142 expect ( fsUtils . readTextFile ( local ) ) . toContain ( '// merged' ) ;
141- expect ( solutionManager . refresh ) . toHaveBeenCalledTimes ( 1 ) ;
143+ expect ( commandsProvider . executeCommand ) . toHaveBeenCalledTimes ( 1 ) ;
144+ expect ( commandsProvider . executeCommand ) . toHaveBeenCalledWith ( REFRESH_COMMAND_ID ) ;
142145 } ) ;
143146} ) ;
0 commit comments