Elixir assert_raise fängt keine Ausnahmen ab

8

Ich habe diesen Testfall geschrieben:

%Vor%

aber es bewertet nicht so, wie ich es erwarten würde. myFn löst einen ArgumentError ( do: raise ArgumentError ) aus, wird jedoch nicht von assert_raise abgefangen.

Das Beispiel in der Dokumentation funktioniert gut:

%Vor%

Aus der Dokumentation:

  

assert_raise(exception, function)
  Stellt sicher, dass exception während der Ausführung von function ausgelöst wird. Gibt die gerettete Ausnahme zurück, schlägt andernfalls fehl

Ich vermute, dass in meinem Testfall die Argumente zuerst ausgewertet werden. Aber wie soll ich es geschrieben haben?

    
Filip Haglund 08.06.2016, 13:16
quelle

1 Antwort

11

Das Ablegen des Funktionsaufrufs in einer Funktion ist der richtige Weg.

%Vor%

Ich habe erwartet, dass assert_raise einen Funktionsaufruf nimmt, aber es braucht eine Funktion.

    
Filip Haglund 08.06.2016, 13:25
quelle

Tags und Links