Ben benim testlerin çoğu içeride Aşağıdaki kod:, önce: Tüm blokta
describe 'index'
let(:company) { FactoryGirl.create(:company) }
let(:user) { FactoryGirl.create(:user, company: company) }
before do
sign_in user
visit products_path
end
...
end
Ama şu uyarıyı alıyorum:
WARNING: let declaration 'user' accessed in a 'before(:all)'
Sorum , bunu yapmanın doğru yolu nedir? Uyarının kendisi hakkında fazla bilgi bulamıyorum.
Teşekkürler!
DÜZENLEME: Amacım ben kullanıcıyı imzalar, hangi sign_in onu geçmek, böylece kullanıcı değişken kullanın ve başka testlerde daha sonra kullanmaktır (ı Kullanıcı şirket özniteliği için kontrol edin)
Bu doğru yol gibi görünüyor. Görmediğimiz bir "önce (: hepsi)" olmadığından emin misiniz? – zetetic
Evet, göstermediğiniz _was_ a 'önce (: all)' varsadım. Durum böyle değil mi? –
'Index', tahmin edeceğiniz gibi, üst düzey tanım bloğunuzu değil, bunun üzerinde başka bir açıklama veya bağlam bloğuyla iç içe geçmiş mi? Başka bir deyişle, bir şey miras almadığınıza emin misiniz? Ayrıca, 'önce yap 'önce ile aynıdır: her bir' yapmak. Onun ima ettiği. Tüm spec dosyasını gösterebilir misin? – fontno