conekta_oxxo_handler_spec.rb
1.23 KB
# frozen_string_literal: true
require 'spec_helper'
describe Var::ConektaOxxoHandler do
before(:each) do
Product.delete_all
end
# TODO: Probar errores en Var.create_charge
it 'processes oxxo charge' do
product = Product.create
conekta_object_mock = JSON.parse(
ConektaChargeCreateObject::OXXO_CREATE_CHARGE_OBJECT,
object_class: OpenStruct)
allow(product).to receive(:conekta_charge).and_return(conekta_object_mock)
Var.create_charge(:conekta, product, {"conekta_type": "oxxo"})
Var::ConektaOxxoHandler.analyze(WebHookPostRequest::OXXO_CHARGE_CREATED)
expect(product.var_id).to eq conekta_object_mock.id
expect(product.var_status).to eq 'pending_payment'
end
it 'processes oxxo payment' do
product = Product.create
conekta_object_mock = JSON.parse(
ConektaChargeCreateObject::OXXO_CREATE_CHARGE_OBJECT,
object_class: OpenStruct)
allow(product).to receive(:conekta_charge).and_return(conekta_object_mock)
Var.create_charge(:conekta, product, {"conekta_type": "oxxo"})
Var::ConektaOxxoHandler.analyze(WebHookPostRequest::OXXO_CHARGE_PAID)
product.reload
expect(product.var_id).to eq conekta_object_mock.id
expect(product.var_status).to eq 'paid'
end
end