Wie "async with" Aussagen verspotten?

8

Ich versuche, Tests für eine Methode zu schreiben, die "async with" -Anweisungen verwendet (in diesem Fall den Verbindungspool von aioredis). Ich möchte die Verbindung nach redis vortäuschen, aber ich habe Probleme herauszufinden, wie.

Folgendes habe ich bisher:

%Vor%

Ich führe es mit:

%Vor%

Und ich bekomme diesen Fehler:

  

& gt; Warten Sie auf conn.set ("Schlüssel", Wert)

     

E TypeError: Objekt NoneType kann nicht in 'expect' verwendet werden

    
iCart 24.03.2017, 15:25
quelle

1 Antwort

5

__aexit__ muss auch asynchron sein (muss ein erwartetes Ergebnis zurückgeben) :

%Vor%

Ohne async wird anstelle einer Coroutine None zurückgegeben, so dass ein Fehler auftritt, wie bei der sehr irreführenden Fehlermeldung, die ich erstellt habe dieses Problem , um darauf hinzuweisen, dass die Fehlermeldung behoben werden muss.

    
Tadhg McDonald-Jensen 27.03.2017, 17:05
quelle