2010-03-17 3 views
0

J'essaie de remplacer un service tiers auquel mon métal parle. Il semble que les mocks/stubs rspec ne s'étendent pas jusqu'au Metal.Test des rails en métal avec du concombre/rSpec

Lorsque j'appelle des méthodes stubbed sur des objets, il appelle l'original et non le stubbed.

Une idée de comment je peux avoir rSpec double s'étend tout le chemin au métal?

Merci.

-Nash

Répondre

0

Avez-vous pensé à utiliser à la place Fakeweb? Cela vous permet de bloquer tout le trafic sortant et d'envoyer une réponse personnalisée à la place. De cette façon, vous n'avez même pas besoin d'écrire une maquette. C'est très léger et facile à utiliser.

+0

Je l'ai utilisé Fakeweb avant. C'est vraiment cool, mais peut-être trop compliqué à utiliser juste pour cette instance. Il s'est avéré que mon problème était dans la définition d'étape que j'utilisais HTTParty pour publier sur le métal, qui utilisait l'environnement défini dans le passager (développement) et non dans l'environnement de test. Le correctif consistait à utiliser webrat visit (url,: post, data) pour s'exécuter en mode test. Merci pour la suggestion. – Nash

+0

Nash - pouvez-vous marquer ceci comme complet si vous l'avez résolu? –

Questions connexes