@@ -30,7 +30,12 @@ import {
3030 IInterpreterAutoSelectionProxyService ,
3131} from '../../../client/interpreter/autoSelection/types' ;
3232import { EnvironmentTypeComparer } from '../../../client/interpreter/configuration/environmentTypeComparer' ;
33- import { IInterpreterHelper , IInterpreterService , WorkspacePythonPath } from '../../../client/interpreter/contracts' ;
33+ import {
34+ GetInterpreterOptions ,
35+ IInterpreterHelper ,
36+ IInterpreterService ,
37+ WorkspacePythonPath ,
38+ } from '../../../client/interpreter/contracts' ;
3439import { InterpreterHelper } from '../../../client/interpreter/helpers' ;
3540import { InterpreterService } from '../../../client/interpreter/interpreterService' ;
3641import { EnvironmentType , PythonEnvironment } from '../../../client/pythonEnvironments/info' ;
@@ -203,25 +208,30 @@ suite('Interpreters - Auto Selection', () => {
203208 envPath : path . join ( workspacePath , '.venv' ) ,
204209 version : { major : 3 , minor : 10 , patch : 0 } ,
205210 } as PythonEnvironment ;
206-
207- when ( interpreterService . getInterpreters ( resource ) ) . thenResolve ( [
208- {
209- envType : EnvironmentType . Conda ,
210- envPath : path . join ( 'some' , 'conda' , 'env' ) ,
211- version : { major : 3 , minor : 7 , patch : 2 } ,
212- } as PythonEnvironment ,
213- {
214- envType : EnvironmentType . System ,
215- envPath : path . join ( '/' , 'usr' , 'bin' ) ,
216- version : { major : 3 , minor : 9 , patch : 1 } ,
217- } as PythonEnvironment ,
218- localEnv ,
219- ] ) ;
211+ let options : GetInterpreterOptions = { } ;
212+
213+ when ( interpreterService . getInterpreters ( resource , anything ( ) ) ) . thenCall ( ( _ , opts ) => {
214+ options = opts ;
215+ return Promise . resolve ( [
216+ {
217+ envType : EnvironmentType . Conda ,
218+ envPath : path . join ( 'some' , 'conda' , 'env' ) ,
219+ version : { major : 3 , minor : 7 , patch : 2 } ,
220+ } as PythonEnvironment ,
221+ {
222+ envType : EnvironmentType . System ,
223+ envPath : path . join ( '/' , 'usr' , 'bin' ) ,
224+ version : { major : 3 , minor : 9 , patch : 1 } ,
225+ } as PythonEnvironment ,
226+ localEnv ,
227+ ] ) ;
228+ } ) ;
220229
221230 await autoSelectionService . autoSelectInterpreter ( resource ) ;
222231
223232 expect ( eventFired ) . to . deep . equal ( true , 'event not fired' ) ;
224- verify ( interpreterService . getInterpreters ( resource ) ) . once ( ) ;
233+ expect ( options ) . to . deep . equal ( { ignoreCache : true } , 'getInterpreters options are different' ) ;
234+ verify ( interpreterService . getInterpreters ( resource , anything ( ) ) ) . once ( ) ;
225235 verify ( state . updateValue ( localEnv ) ) . once ( ) ;
226236 } ) ;
227237
@@ -231,25 +241,30 @@ suite('Interpreters - Auto Selection', () => {
231241 envPath : path . join ( '/' , 'usr' , 'bin' ) ,
232242 version : { major : 3 , minor : 9 , patch : 1 } ,
233243 } as PythonEnvironment ;
234-
235- when ( interpreterService . getInterpreters ( resource ) ) . thenResolve ( [
236- {
237- envType : EnvironmentType . Conda ,
238- envPath : path . join ( 'some' , 'conda' , 'env' ) ,
239- version : { major : 3 , minor : 7 , patch : 2 } ,
240- } as PythonEnvironment ,
241- systemEnv ,
242- {
243- envType : EnvironmentType . Pipenv ,
244- envPath : path . join ( 'some' , 'pipenv' , 'env' ) ,
245- version : { major : 3 , minor : 10 , patch : 0 } ,
246- } as PythonEnvironment ,
247- ] ) ;
244+ let options : GetInterpreterOptions = { } ;
245+
246+ when ( interpreterService . getInterpreters ( resource , anything ( ) ) ) . thenCall ( ( _ , opts ) => {
247+ options = opts ;
248+ return Promise . resolve ( [
249+ {
250+ envType : EnvironmentType . Conda ,
251+ envPath : path . join ( 'some' , 'conda' , 'env' ) ,
252+ version : { major : 3 , minor : 7 , patch : 2 } ,
253+ } as PythonEnvironment ,
254+ systemEnv ,
255+ {
256+ envType : EnvironmentType . Pipenv ,
257+ envPath : path . join ( 'some' , 'pipenv' , 'env' ) ,
258+ version : { major : 3 , minor : 10 , patch : 0 } ,
259+ } as PythonEnvironment ,
260+ ] ) ;
261+ } ) ;
248262
249263 await autoSelectionService . autoSelectInterpreter ( resource ) ;
250264
251265 expect ( eventFired ) . to . deep . equal ( true , 'event not fired' ) ;
252- verify ( interpreterService . getInterpreters ( resource ) ) . once ( ) ;
266+ expect ( options ) . to . deep . equal ( { ignoreCache : true } , 'getInterpreters options are different' ) ;
267+ verify ( interpreterService . getInterpreters ( resource , anything ( ) ) ) . once ( ) ;
253268 verify ( state . updateValue ( systemEnv ) ) . once ( ) ;
254269 } ) ;
255270 } ) ;
0 commit comments