0
我有與我建立的控制器嵌套形式測試相關模型是否已經建立?
def edit
@trans_op = TransportOperator.find params[:id]
@trans_op.coverages.build
end
我如何可以測試該@trans_op.coverages.build
線是否存在關聯的模型?
describe "GET edit" do
let!(:trans_op){ Factory :trans_op }
it "should be a success" do
get :edit, id: trans_op
response.should be_success
end
# this test needs to be fixed
it "should build an empty coverage if there are none" do
get :edit, id: trans_op
# ???
end
end
我試圖嘲弄:
it "should build an empty coverage if there are none" do
trans_op.coverages.should_receive(:build)
get :edit, id: trans_op
end
1) TransportOperatorsController GET edit should add an empty coverage if there are none
Failure/Error: Unable to find matching line from backtrace
([]).build(any args)
expected: 1 time
received: 0 times
和計數
it "should build an empty coverage if there are none" do
get :edit, id: trans_op
trans_op.coverages.count.should == 1
end
失敗:
1) TransportOperatorsController GET edit should add an empty coverage if there are none
Failure/Error: trans_op.coverages.count.should == 1
expected: 1
got: 0 (using ==)