RSpec - Test, ob die Methode ihren Blockparameter aufgerufen hat

Ich habe eine Methode, die Codeblock als Argument nimmt. Das Problem ist: Wie kann man mit RSpec testen, ob diese Methode den Block aufgerufen hat?

Der Block kann in jedem Bereich ausgewertet werden, den die Methode benötigt, nicht unbedingt mit ayield oderblock.call. Es kann an eine andere Klasse übergeben oder in einem anonymen Klassenobjekt oder an einem anderen Ort ausgewertet werden. Damit der Test erfolgreich ist, reicht es aus, den Block als Ergebnis des Methodenaufrufs irgendwo auszuwerten.

Gibt es eine Möglichkeit, so etwas mit RSpec zu testen?

Siehe auchdiese für komplexere Fälle mitlets und verspottet.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage