Skip to content

VSCode not running discovered PyTest tests when path contains a symlink #17573

Description

@Mithrandir2k18

Environment data

  • VS Code version: code --version
    1.60.2
    7f6ab5485bbc008386c4386d08766667e155244e
    x64
  • Extension version (available under the Extensions sidebar): v2021.9.1246542782
  • OS and version: Ubuntu 20.04 5.4.0-84-generic
  • Python version (& distribution if applicable, e.g. Anaconda): 3.8.10
  • Type of virtual environment used (N/A | venv | virtualenv | conda | ...): N/A
  • Relevant/affected Python packages and their versions: Pytest 6.2.5
  • Relevant/affected Python-related VS Code extensions and their versions: (probably unrelated) Pylance v2021.9.4
  • Value of the python.languageServer setting: Pylance

Expected behaviour

Run discovered Tests when running all tests.

Actual behaviour

Tests are discovered correctly but doing Run All Tests will turn the icons blue briefly and then return to the state before running them (gray circle with black box in the middle) almost instantly.

Steps to reproduce:

  1. create a folder called e.g. repositories
  2. checkout out any python project containing a test-folder with pytest tests
  3. verify these tests run using the discover tests and run all tests features
  4. move the repository folder to a different path(in my case a path on a different drive)
  5. create a symlink using ln -s /new/path/to/repositories /old/path/to/repositories
  6. verify your symlink is correct by either ls -l or by doing cd /old/path/to/repositories
  7. start vscode with the path containing the symlink so cd /old/path/to/repositories/code_repo && code .
  8. Tests are discovered correctly but doing Run All Tests will turn the icons blue briefly and then return to the state before running them (gray circle with black box in the middle) almost instantly.
  9. Close VSCode and cd into the repo without a symlink in the path(cd /new/path/to/repositories/code_repo && code .
  10. Tests now run again!

Logs

Sadly not output whatsoever, the only indication of clicking on runalltests(or using ctrl+shift+p to do it) is the briefly blue-flashing icons next to the tests.

This is the Output -> Python output but as mentioned above, doesn't seem relevant:

User belongs to experiment group 'pythonaacf'
User belongs to experiment group 'pythonJediLSP'
User belongs to experiment group 'pythonDiscoveryModuleWithoutWatcher'
User belongs to experiment group 'pythonTensorboardExperiment'
User belongs to experiment group 'PythonPyTorchProfiler'
User belongs to experiment group 'pythonDeprecatePythonPath'
User belongs to experiment group 'pythonSortEnvs'
User belongs to experiment group 'pythonRunFailedTestsButtonDisplayed'
User belongs to experiment group 'pythonRefreshTestsButtonDisplayed'
User belongs to experiment group 'pythonRememberDebugConfig'
Python interpreter path: /usr/bin/python3
Starting Pylance language server.

Activity

  1. added
    bugIssue identified by VS Code Team member as probable bug
    triage-neededNeeds assignment to the proper sub-team
    on Sep 30, 2021
  2. cbini commented on Oct 1, 2021

    @cbini

    Same issue breaks Pylance as well. This morning, I added a symlink to my home directory on WSL (unrelated to any project repo) and noticed the linter was broken. Found this issue, deleted the symlink, and it starts working again immediately.

  3. salu133445 commented on Dec 18, 2021

    @salu133445

    Ran into this issue as well. Linting and testing broke if I opened the folder with a symlink in its path.

  4. eleanorjboyd commented on Jul 11, 2023

    @eleanorjboyd
    Member

    Consolidating all issues on testing and symlinks to issue #9347. Let me know if you do not think this other issue is representative of the bug you are facing. Thanks!

  5. locked as resolved and limited conversation to collaborators on Aug 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

area-testingbugIssue identified by VS Code Team member as probable bug

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions