2010-10-26 4 views
5

Pour une suite de tests qui utilise déjà mocha pour se moquer, de nouveaux tests peuvent-ils être écrits avec rspec moqueuse? peut-être que tourner avant de (: tous) et remettez-Mocha après (: tous)Se moquer de rspec et de moka ensemble

J'ai essayé de changer la configuration Spec :: Runner à l'exécution et qui ne semblent pas travailler avec moqueur

+0

Je voudrais reformuler votre question "rspec mocking semble entrer en conflit avec mocha, comment puis-je utiliser les deux dans un projet?", Et peut-être le diriger sur les personnes rspec en IRC, questions github, etc –

+0

quelle version de rspec vous utilisez. – bobbywilson0

Répondre

3

J'ai publié une nouvelle gemme pour cela. Vous pouvez trouver plus de détails ici ->http://github.com/endeepak/rspec-multi-mock

+0

merci un million pour cela :) L'utiliser dès maintenant pour migrer de Mocha à RSpec. –

+0

Je suis content que cela serve le but :) –

1

Il semble que la gemme RSpec Multi Mock de Deepak résout ce problème.

Mais vous devriez vous demander si c'est vraiment ce que vous voulez. En fin de compte, la cohérence est le plus important, et l'utilisation d'un mélange de cadres moqueurs au sein de la même application est susceptible de conduire à la confusion.

Personnellement, je suis assez satisfait de la simulation intégrée de RSpec et ne trouve généralement pas le besoin de Mocha sur mes propres projets. Mais certains de mes pairs préfèrent Mocha et je ne suis pas vraiment au courant des limitations de Mocha par rapport à moqueur RSpec Vanilla, donc je vous recommande de rester avec Mocha si c'est ce que l'application utilise déjà. Même si je sais que son support "any_instance" est considéré comme une odeur de code par certains, il arrive parfois très utile. :)

+0

Je suis totalement d'accord avec vous. Comme je l'ai mentionné sur la page github, cette gemme devrait probablement être utilisée pendant que l'on passe d'un framework à l'autre et que vous n'avez pas assez de temps pour convertir tous les usages. Ou quand une chose dont vous avez besoin n'est pas disponible cadre. Ou il y a des cas où vous fusionnez deux projets et ils utilisent différents cadres de moquerie. L'objectif final devrait être d'utiliser un cadre unique et éviter les confusions –

Questions connexes