Wie testen Sie die Controller-Aktion, die Puntopagos und Rest-Client verwendet?
-
20-12-2019 - |
Frage
Ich habe einen Controller mit einer Post-Aktion mit dem Namen generas generakodicetagcode.In der erstellten Aktion verwende ich eine puntopagos gem -Klasse (create
), der das REST-Client-GEM , um einen Beitrag an eine API zu erstellen:
Wie kann ich mit RSPEC, Stub die REST-Client-Anforderung und Antwort, um meine Erstellenaktion zu testen?
Lösung
Just Stub PuntoPagos::Request.new
und bleibt stumm:
das ist für eine erfolgreiche Anfrage;Mach es wieder mit success?
-Stubbed, um den generationspflichten, um diesen Zweig zu testen.
Wenn Sie dieses Arbeiten haben, schauen Sie in false
, um dasselbe mit weniger Tippen zu tun.
hat gesagt, dass es viel besser wäre, das Puntopagos-Zeug mit einer einfacheren Schnittstelle in eine separate Klasse zu extrahieren:
generasacodicetagpre.Dann können Sie einfach tun
generasacodicetagpre.in Ihrem Test.