Belirli bir mizanpajın RSpec'de nasıl kullanıldığını nasıl sınarım? Template.layout, response.layout ve response.show try_template ("layout") denemeden denedim. Tahmin olarak RSpec 2'deRspec test düzeni
cevap
, bir kontrolör spesifikasyonundaki, sen render_template kullanır, ancak görüşlerini dizinine ilişkin bir yol dahil etmek gerekir. senin düzeni uygulaması/görünümler/düzenleri/mylayout.html.erb Yani, eğer senin Spec şuna benzer:
response.should render_template "layouts/mylayout"
# rspec-rails-1.3.x for rails-2
describe HomeController do
describe "the home page" do
it "should use the :home_page layout" do
get :index
response.layout.should == "layouts/home_page"
end
end
end
# rspec-2 for rails-3
describe "GET index" do
it "renders the page within the 'application' layout" do
get :index
response.should render_template 'layouts/application' # layout
response.should render_template 'index' # view
end
end
https://gist.github.com/11080d61648aaee51840 rspec 2'deyim, raylar 3. Response.layout ve önerilen template.layout hatalarıyla bir kullanım dışı bırakma alıyorum. –
Yanıtımı geri bildiriminize dayanarak güncelledim. –
Ayrıca, her iki test edebilirsiniz, tek poşetine düzen ve eylem render, içinde RSpec-2:
response.should render_template(%w(layouts/application name_of_controller/edit))
RSpec 3 için güncellenmiş sözdizimi:
expect(response).to render_template(:index) # view
expect(response).to render_template(layout: :application) # layout
Yoksa @Flov's one-liner tercih ederseniz, yazabilir:
expect(response).to render_template(:index, layout: :application)
Not render_template
o delegeleri assert_template
için. Bu dokümanları şu adreste bulabilirsiniz: ActionController assert_template.
Sadece bir not, bu artık işe yaramıyor ve aynı zamanda dokümantasyon güncelliğini yitiriyor. – Sebastialonso
- 1. Paralel Test Yürütme, rspec
- 2. RSpec, test veritabanında
- 3. RSpec test şablonları
- 4. Test Dizini, Rspec
- 5. Rspec: Örnek değişkeninin test ataması
- 6. ActionMailer rspec ile test ediliyor
- 7. RSpec ile gemide test denetleyicileri
- 8. Rspec: Yinelemeyi nasıl test edebilirim?
- 9. Rspec> test veritabanı görünümleri
- 10. Rspec ile bir kaynakların üye rotalarını test etme rspec
- 11. RSpec ve Capybara (Rails) ile Test Yönlendirme
- 12. Raylar 3.1, RSpec: test modeli doğrulamaları
- 13. RSpec Senaryo Anahatları: Çoklu Test Durumları
- 14. test raylarının rspec ile iç içe öznitelikleri
- 15. Raylar RSpec Yönlendirme: eylemleri Test: DEĞİL rotada
- 16. test rayları motor jeneratörü ile rspec
- 17. Sınama işlemini nasıl test edebilirim: RSpec
- 18. Güçlü paramları Rspec ile nasıl test edebilirim?
- 19. rspec + fabrika modeli test iç içe öznitelikleri
- 20. Raylar 4 rspec 3 doğrulamadan önce test
- 21. RSpec
- 22. rspec
- 23. RSpec
- 24. Rspec
- 25. Rspec
- 26. RSpec
- 27. RSpec
- 28. RSpec
- 29. RSpec
- 30. RSpec
Ve herhangi bir düzen kullanılmadığını nasıl test edersiniz? Örneğin, denetleyicinin 'render: layout => false' yazdığını varsayalım. Nasıl test edersin? –