2012-03-05 8 views
1

完全なRailsスタックを使用せずに、ActionView拡張機能(新規ヘルパーなど)をテストするにはどうすればよいですか?テスト用のRailsなしでActionViewをレンダリングする

RSpecを使用しているので、spec_helper.rbから/ spec/views /フォルダからテンプレートをレンダリングする必要があります。それをする最善の方法は何ですか?

答えて

0

質問には答えられないかもしれませんが、RSpecをrspec-rails gemとともに使用することができます。 Railsスタックの外側でテストする必要はありません。ここで

https://github.com/rspec/rspec-rails

例です。

describe "lists/show.html.erb" do 
    before(:each) do 
    assign :new_link, Link.new 
    @link = mock_model(Link, 
         :title => "Link's title", 
         :url => "http://wwww.link.s.url/") 
    @list = mock_model(List, 
         :title => "Some title", 
         :links => [@link]) 
    end 

    it "displays the list's title" do 
    render 
    rendered.should have_content(@list.title) 
    end 

    it "displays the links's title and URL" do 
    render 
    rendered.should have_link(@link.title, 
           :href => @link.url) 
    end 
end 

あなたのGemfileを適応させる(超えたリンクを参照)、bundle update & rails rspec:installを実行する必要があります。

+0

ありがとうございます。レンダリング/レンダリングされたソリューションは実際にはレールなしで動作します。 – Ximik

関連する問題