私はテスト駆動開発に少し慣れていないので、できるだけ多くのコードをカバーする方法を学びたいと思っています。そうすれば、Rails でより複雑なアプリを作成するときに、バグの発生を防ぐことができます。
スタイルが Twitter Bootstrap クラスにメッセージをフラッシュするコードがいくつかapplication_helper.rb
あります。私が書いたコードのテストを書きたいので、何かが変更された場合、少し問題になる前にそれについて知ることができます。
#application_helper.rb
module ApplicationHelper
def flash_class(type)
case type
when :alert
"alert-error"
when :notice
"alert-info"
else
""
end
end
end
私のapplication.html.erb
ビューには、上記のヘルパー メソッドを使用してフラッシュ メッセージを表示する次のコードがあります。
#application.html.erb
<% flash.each do |type, message| %>
<div class="alert <%= flash_class type %>">
<button type="button" class="close" data-dismiss="alert">×</button>
<%= message %>
</div>
<% end %>
コードが機能することをテストするには、どのような種類のテストを作成application_helper.rb
すればよいでしょうか? また、そのテストをどのように作成すればよいでしょうか? また、テスト作成にはshoulda-context gem を使用していますが、テストが標準の Railstest_with_lots_of_underscores
スタイルで作成されているかどうかは気にしません。
Cloud9を使用して、Ruby 1.9.3 (パッチ レベル 327) と Rails 3.2.13 でアプリケーションを作成しています。私が取り組んでいるアプリのリポジトリは、この Github リポジトリにあります