0
我有一個類負責處理支付網關的某些響應。如何在Rspec中測試此類行爲
比方說:
class PaymentReceiver
def initialize(gateway_response)
@gateway_response = gateway_response
end
def handle_response
if @gateway_response['NC_STATUS'] != '0'
if order
order.fail_payment
else
raise 'LackOfProperOrder'
# Log lack of proper order
end
end
end
private
def order
@order ||= Order.where(id: @gateway_response['orderID']).unpaid.first
end
end
在從支付有效載荷我已經NC_STATUS
如果支付成功,orderID
這是指Order ActiveRecord class by
id`負責信息。
我想測試行爲(在rspec的): 如果PaymentReceiver接收響應,其中NC_STATUS = 0發送至fail_payment
通過orderID
稱爲特定Order
對象!。
你將如何處理測試?我認爲,也可能是設計不好...