@@ -267,52 +267,68 @@ jobs:
267
267
python -m pip install --upgrade -r ./build/functional-test-requirements.txt
268
268
if : matrix.test-suite == 'functional'
269
269
270
- - name : Prepare environment for venv tests
270
+ - name : Prepare pipenv for venv tests
271
271
env :
272
272
TEST_FILES_SUFFIX : testvirtualenvs
273
273
PYTHON_VIRTUAL_ENVS_LOCATION : ' ./src/tmp/envPaths.json'
274
+ shell : pwsh
275
+ if : matrix.test-suite == 'venv'
274
276
run : |
275
- # venv/bin or venv\\Scripts (windows)?
276
- $environmentExecutableFolder = 'bin'
277
- if ('${{runner.os}}' -match 'windows-latest') {
278
- $environmentExecutableFolder = 'Scripts'
279
- }
280
-
281
- # pipenv
282
277
python -m pip install pipenv
283
- python -m pipenv run python build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} pipenvPath
278
+ python -m pipenv run python ./ build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} pipenvPath
284
279
285
- # venv
286
- if ('${{matrix.python}}' -like '3.?') {
287
- python -m venv .venv
288
- & ".venv/$environmentExecutableFolder/python" ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} venvPath
289
- }
290
-
291
- # virtualenv
280
+ - name : Prepare virtualenv for venv tests
281
+ env :
282
+ TEST_FILES_SUFFIX : testvirtualenvs
283
+ PYTHON_VIRTUAL_ENVS_LOCATION : ' ./src/tmp/envPaths.json '
284
+ shell : pwsh
285
+ if : matrix.test-suite == 'venv'
286
+ run : |
292
287
python -m pip install virtualenv
293
- python -m virtualenv .virtualenv
294
- & ".virtualenv/$environmentExecutableFolder/python" ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} virtualEnvPath
288
+ python -m virtualenv .virtualenv/
289
+ if ('${{matrix.os}}' -match 'windows-latest') {
290
+ & ".virtualenv/Scripts/python.exe" ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} virtualEnvPath
291
+ } else {
292
+ & ".virtualenv/bin/python" ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} virtualEnvPath
293
+ }
295
294
296
- # conda
295
+ - name : Prepare venv for venv tests
296
+ env :
297
+ TEST_FILES_SUFFIX : testvirtualenvs
298
+ PYTHON_VIRTUAL_ENVS_LOCATION : ' ./src/tmp/envPaths.json'
299
+ shell : pwsh
300
+ if : matrix.test-suite == 'venv' && startsWith(matrix.python, 3.)
301
+ run : |
302
+ python -m venv .venv
303
+ if ('${{matrix.os}}' -match 'windows-latest') {
304
+ & ".venv/Scripts/python.exe" ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} venvPath
305
+ } else {
306
+ & ".venv/bin/python" ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} venvPath
307
+ }
297
308
309
+ - name : Prepare conda for venv tests
310
+ env :
311
+ TEST_FILES_SUFFIX : testvirtualenvs
312
+ PYTHON_VIRTUAL_ENVS_LOCATION : ' ./src/tmp/envPaths.json'
313
+ shell : pwsh
314
+ if : matrix.test-suite == 'venv'
315
+ run : |
298
316
# 1. For `terminalActivation.testvirtualenvs.test.ts`
299
-
300
- $condaExecPath = Join-Path -Path $Env:CONDA -ChildPath $environmentExecutableFolder | Join-Path -ChildPath conda
301
- if ('${{runner.os}}' -match 'windows-latest') {
302
- $condaPythonPath = Join-Path -Path $Env:CONDA -ChildPath python
317
+ if ('${{matrix.os}}' -match 'windows-latest') {
318
+ $condaPythonPath = Join-Path -Path $Env:CONDA -ChildPath python.exe
319
+ $condaExecPath = Join-Path -Path $Env:CONDA -ChildPath Scripts | Join-Path -ChildPath conda
303
320
} else{
304
- $condaPythonPath = Join-Path -Path $Env:CONDA -ChildPath $environmentExecutableFolder | Join-Path -ChildPath python
305
- & $condaPythonPath ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} condaExecPath $condaExecPath
321
+ $condaPythonPath = Join-Path -Path $Env:CONDA -ChildPath bin | Join-Path -ChildPath python
322
+ $condaExecPath = Join-Path -Path $Env:CONDA -ChildPath bin | Join-Path -ChildPath conda
306
323
}
324
+ & $condaPythonPath ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} condaExecPath $condaExecPath
307
325
& $condaPythonPath ./build/ci/addEnvPath.py ${{env.PYTHON_VIRTUAL_ENVS_LOCATION}} condaPath
308
326
309
327
# 2. For `interpreterLocatorService.testvirtualenvs.ts`
310
328
311
329
& $condaExecPath create -n "test_env1" -y python
312
330
& $condaExecPath create -p "./test_env2" -y python
313
- & $condaExecPath create -p "$Env:HOME/test_env3" -y python
314
- shell : pwsh
315
- if : matrix.test-suite == 'venv'
331
+ & $condaExecPath create -p "~/test_env3" -y python
316
332
317
333
# Run TypeScript unit tests only for Python 3.X.
318
334
- name : Run TypeScript unit tests
@@ -341,6 +357,8 @@ jobs:
341
357
# run tests and then clean up the process once the tests ran.
342
358
# See https://github.com/GabrielBB/xvfb-action
343
359
- name : Run venv tests
360
+ env :
361
+ TEST_FILES_SUFFIX : testvirtualenvs
344
362
345
363
with :
346
364
run : npm run testSingleWorkspace
0 commit comments