réponses Octokit sont de type Sawyer::ResponseComment répliquées correctement le corps de réponse d'une réponse de demandes de Octokit pour webmock Stub
Ils ressemblent à ceci:
{:name=>"code.py",
:content => "some content"}
Je suis en train de bouchonner ma demande comme si
reponse_body = {:content => "some content"}
stub_request(:any, /.*api.github.com\/repos\/my_repo\/(.*)\/code.py/).to_return(:status => 200, :body => response_body)
Dans mon code, j'appelle ensuite response.content, donc je veux être en mesure d'obtenir le contenu de la réponse.
Je reçois actuellement l'erreur: 'WebMock :: Response :: InvalidBody: doit être l'un de: [Proc, IO, Pathname, String, Array]. 'Hash' donné '. Quel est le bon format pour response_body? Si je le transforme en json, je ne peux alors pas faire de response.content sur l'objet dans mon code.
Bonne idée, je le pensais aussi, mais j'obtiens la même erreur sur le double. 'WebMock :: Response :: InvalidBody: doit être l'un des suivants: [Proc, IO, Chemin, Chaîne, Array]. 'RSpec :: Mocks :: Double' donné' –
Gah! J'ai fait une faute de frappe. Le 'response_body' devrait être un tableau avec un élément. Cet élément serait alors le double du test. Je vais mettre à jour ma réponse. –
C'est très bien et ça marchera, mais maintenant le code testé nous recevons un tableau, quand il recevrait normalement un hachage. En fait, le double n'est pas requis si le hachage est retourné dans le tableau, car il s'agit d'un type de retour autorisé. –