2011-05-29 1 views
1

J'écris une gemme et je veux vérifier qu'elle effectue une requête http avec les paramètres, les en-têtes et le contenu qu'elle est censée transmettre. Comment écrire un test unitaire J'utilise httparty pour faire la demande, j'utilise également fakeweb pour tester les actions après la réponse.Comment écrire un test pour spécifier le format d'une requête http dans ruby?

+1

« Comment puis-je écrire une unité test "est un peu vague. Avez-vous besoin d'aide avec la syntaxe rspec? Avez-vous besoin de savoir comment configurer rspec dans un environnement gem? Voulez-vous des conseils sur le processus TDD ou BDD? Peut-être que du code ou des tentatives initiales seraient un bon endroit pour commencer la discussion. –

Répondre

3

Je recommande d'utiliser webmock et comprennent la demande de talon qui doit être créé:

Dans votre Gemfile:

group :test do 
    gem 'webmock' 
end 

Dans votre spec:

stub_request(:post, 
      "https://external.api.com") 
      .with(:body => {:message => {:foo => 'bar'}}, 
        :headers => {'Accept'=>'application/json'}) 
+0

merci Nash, c'est ce que je cherchais. – Pedro

+0

en fait, vous devriez merci @juandebravo;) Je viens d'éditer la réponse. –

Questions connexes