2014-10-21 3 views
1

У меня этот код в RSpec.Как использовать `allow` с` let` в RSpec

before(:each) do 
    @company = Company.create(price: 700) 
    allow(@company).to receive(:foo){5} 
end 

Могу ли я использовать allow метод в let также? Если да, то как я могу его использовать?

+0

Первый вопрос: ** Что вы пробовали ** – tadman

+0

'пусть (: компания) {Company.create (price: 700)} ', и я понятия не имею, где я должен помещать' allow' и как создать созданный экземпляр компании. – ironsand

ответ

4

насчет

let(:company) do 
    company = Company.create!(price: 700) 
    allow(company).to receive(:foo){5} 
    company 
end 
1

Я хотел бы добавить, используя кран, который является гораздо более эффективным подходом:

let(:company) do 
    Company.create!(price: 700) 
    .tap do |c| 
     allow(c).to receive(:foo){5} 
    end 
end 
Смежные вопросы