Octokit Antworten vom Typ sind Sawyer::ResponseWie richtig Antwort für Antworttext eines Octokit Anfragen webmock replizieren Stummel
Sie sehen wie folgt aus:
{:name=>"code.py",
:content => "some content"}
Ich versuche, meine Anfrage wie so
Stubreponse_body = {:content => "some content"}
stub_request(:any, /.*api.github.com\/repos\/my_repo\/(.*)\/code.py/).to_return(:status => 200, :body => response_body)
In meinem Code rufe ich dann response.content, also möchte ich in der Lage sein, den Inhalt von der Antwort zu bekommen.
ich zur Zeit die Fehlermeldung: ‚WebMock :: Antwort :: InvalidBody: muss einer der folgenden sein: [Proc, IO, Pathname, String, Array]. 'Hash' gegeben '. Was ist das richtige Format für response_body? Wenn ich es zu einem json mache, kann ich dann response.content nicht auf das Objekt in meinem Code anwenden.
Nette Idee, dachte ich auch, aber auf der doppelten gleichen Fehler. 'WebMock :: Antwort :: InvalidBody: muss einer der folgenden sein: [Proc, IO, Pathname, String, Array] 'RSpec :: Mocks :: Double' given' –
Gah.! Ich habe einen Tippfehler gemacht. Der 'response_body' sollte ein Array mit einem Element sein. Dieses Element wäre dann das Testdoppel. Ich werde meine Antwort aktualisieren. –
Das ist alles sehr gut und wird funktionieren, aber jetzt ist der im Test befindlichen Code erhalten wir ein Array, wenn es in der Regel einen Hash erhalten würde. Tatsächlich ist das Double nicht erforderlich, wenn der Hash innerhalb des Arrays zurückgegeben wird, da dies ein zulässiger Rückgabetyp ist. –