【发布时间】:2021-04-13 20:52:04
【问题描述】:
我有以下控制器的操作方法:
def update
@membership.update(membership_params)
if(@membership.admin)
ProjectAssignments::RemoveProjectAssignmentsByUser.call!(user_id: membership.user_id, project_id: membership.project_id)
end
respond_with(@membership)
end
我需要测试 ProjectAssignments::RemoveProjectAssignmentsByUser.call!在更新操作中被调用。
我已经写了测试,但是出现错误
it "should call interactor" do
expect {
put :update, params: update_params, as: :json
}.to receive { :call! }.with(hash_including({user_id: membership.user_id, project_id: membership.project_id})
end
错误 - 参数错误: 参数数量错误(给定 0,预期 1)
【问题讨论】:
-
receive应该带一个符号,例如,receive(:call!)
标签: ruby-on-rails ruby rspec