我正在尝试在我的控制器中测试新动作。目前它看起来像这样:
控制器
def new
@business = Business.new
@business.addresses.build
end
规格
describe 'GET #new' do
it 'assigns a new business to @business' do
get :new
expect(assigns(:business)).to be_a_new(Business)
end
end
我想测试一下' @ business.addresses.build'。我该怎么做?
提前致谢!
答案 0 :(得分:11)
怎么样
expect(assigns(:business).addresses.first).to be_a_new(Address)
答案 1 :(得分:1)
假设构建是一种方法,您只需要测试以确保调用构建。您可以将新的Business
替换为具有期望接收addresses
的{{1}}属性的模拟,从而实现此目的。
我没有测试过这个,但我怀疑你可以这样做:
:build