2010-09-22 8 views
2

J'écris une application et j'utilise la localisation partout où je peux. Le problème est que je voudrais le tester en utilisant du concombre. Je ne veux pas vouloir mettre à jour les tests chaque fois que la traduction est modifiée. Est-il possible de faire le concombre comprendre quelque chose comme ça:Rails, concombre et messages localisés

When I am logged in 
Then I should see t(:login_ok) 

Répondre

4

Non testé, mais je crois que quelque chose comme cela devrait fonctionner:

Then /I should see t\(:?([^\)]*)\)/ do |text| 
    Then "I should see #{I18n.translate(text)}" 
end 

Cela devrait être features/step_definitions/???_steps.rb

+0

Merci, ce plus ou moins travaillé - juste corrigé pour ressembler à: Alors/^ J'appuie sur t "([^"] *) "$/do | text | click_button (I18n.translate (texte)) fin Ensuite/^ Je devrais voir t "([^"] *) "/ do | text | page.tould have_content (I18n.translate (texte)) fin –

+0

C'est cool car vous pouvez également tester vos clés de traduction. –