Ich verwende die waiting
Bibliothek in meinem Code, um auf eine Bedingung zu warten, um wahr zu werden. Als Teil der Bibliothek gibt waiting.wait
True
zurück, wenn das Prädikat wahr ist; andernfalls wirft es und Ausnahme oder wartet für immer abhängig von Timeout-Werten usw.Wie kann ich warten, Bibliothek in Python?
Ich möchte dieses in meinen Tests patch, um immer True
zurückzugeben, ohne in den Wartezyklus zu kommen. Hier ist mein Versuch:
#!/usr/bin/env python3
from unittest.mock import Mock
import waiting
from waiting import wait
def test_waiting():
waiting.wait.return_value = True
# Below *should* wait forever because it can never be true.
# Want to make it return true instead.
return wait(lambda: False)
if __name__ == "__main__":
assert(test_waiting())
Was finde ich aber, dass es tatsächlich der Bibliothek Code ruft statt Kurzschließen der Rückkehr.
Wie kann ich diese Methode zwingen, einfach einen Wert zurückzugeben (oder einen Nebeneffekt auszulösen), ohne den Code tatsächlich aufzurufen?
Nun, das war dumm von mir. :) Funktioniert perfekt. Prost! – erip