【发布时间】:2020-01-28 16:14:55
【问题描述】:
我有以下控制器方法:
def create_charge
payment = Payment.where('order_id = ?', 1).first
if payment.date <= Date.today
err = payment.execute_off_session(customer.id, create_in_wms = true)
else
order.update_attributes(status: :partially_paid)
end
end
我需要测试execute_off_session 是否已被调用。我找不到合适的方法:
describe Api::V1::OrdersController, type: :controller do
describe "#create_charge" do
context "fingerprinting a card only" do
it "should'nt call #execute_off_session" do
payment = instance_double("Payment")
expect(payment).not_to receive(:execute_off_session)
post :create_charge, {:params => {:uid => @order.uid}}
end
end
end
end
【问题讨论】:
标签: rspec rspec-rails