[docs] Specify that unittest.mock.patch.dict does not make a deepcopy
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 77.2k
- Forks
- 35.9k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Documentation
I always assumed that unittest.mock.patch.dict made a recursive (deep) copy of the dict and restored it afterwards.
It turns out it is a "simple" copy()
We should maybe clarify that in the documentation
Example:
foo = {
"bar": {"baz": 1}
}
with patch.dict(foo, {"unrelated": 123}):
foo["bar"]["baz"] = 2
# baz will stay at 2, assumed it was reset to the original 1
Linked PRs
- gh-144434
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit der unittest.mock.patch.dict-Dokumentation und überprüfe die bestehende Erklärung, wie das Dictionary wiederhergestellt wird. Stelle klar, dass eine flache Kopie statt einer rekursiven deepcopy verwendet wird, und verwende das Beispiel mit dem verschachtelten Dictionary aus dem Issue, um zu zeigen, dass Änderungen innerhalb der inneren Dictionaries bestehen bleiben. Überprüfe nach der Bearbeitung den Dokumentations-Build.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- documentation
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 1/5
- Geschätzter Aufwand
- Unter einer Stunde
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 25/100