python / python/cpython

_get_name_from_path() in Lib/unittest/loader.py fails when src path contains symlinks

Offen
#149,141 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

stdlib type-bug
Vorherrschende Sprache
Python
Sterne
77.2k
Forks
35.9k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Bug report

Bug description:

This is conceptually somewhat similar to gh-148314

When the path to the source tree is via a symlink, an alternate path to the same will cause _get_name_from_path() to assert, thinking the supplied path is not a sub-path of the src tree. During the run of unittest's test suite, "." is passed as a path which is resolved to an absolute path - which of course doesn't match a symlinked path.

CPython versions tested on:

CPython main branch

Operating systems tested on:

macOS

Linked PRs
  • gh-149143

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginnen Sie in Lib/unittest/loader.py bei _get_name_from_path() und führen Sie anschließend die unittest-Testsuite mit einem über einen Symlink erreichten Pfad im Quellbaum aus. Erledigt ist es, wenn der alternative Pfad nicht mehr die Assertion für den Unterpfad auslöst und die relevante Regressionstestabdeckung erfolgreich ist; gh-149143 ist bereits mit diesem Issue verknüpft.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
testing-qa
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.