Попытка издеваться над «новым» через ассоциацию - PullRequest
0 голосов
/ 23 октября 2009

Это у меня в контроллере

@business = @current_user.businesses.new(params[:business])

@businesses - это массив business объектов, и я не уверен, как имитировать этот каскад вызовов.

1 Ответ

2 голосов
/ 23 октября 2009

Вот один из способов сделать это. Часть «бизнеса» является доверенным лицом ассоциации. Так что обычно издевайтесь так:

business = Business.new
businesses_proxy = mock('business association proxy', :new => business)
@current_user.should_receive(:businesses).and_return(businesses_proxy)

или более явный

business = Business.new
businesses_proxy = mock('business association proxy')
businesses_proxy.should_recieve(:new).and_return(business)
@current_user.should_receive(:businesses).and_return(businesses_proxy) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...