Sha256: 3de7706ebb63de34cd9a735234c1862adee785f8ff7c148c329916dedbfd150a

Contents?: true

Size: 1.44 KB

Versions: 6

Compression:

Stored size: 1.44 KB

Contents

describe MangoPay::PayIn::Card::Web, type: :feature do
  include_context 'payins'

  def check_type_and_status(payin)
    expect(payin['Type']).to eq('PAYIN')
    expect(payin['Nature']).to eq('REGULAR')
    expect(payin['PaymentType']).to eq('CARD')
    expect(payin['ExecutionType']).to eq('WEB')

    # not SUCCEEDED yet: waiting for processing
    expect(payin['Status']).to eq('CREATED')
    expect(payin['ResultCode']).to be_nil
    expect(payin['ResultMessage']).to be_nil
    expect(payin['ExecutionDate']).to be_nil
  end
  
  describe 'CREATE' do
    it 'creates a card web payin' do
      created = new_payin_card_web
      expect(created['Id']).not_to be_nil
      check_type_and_status(created)
    end
  end

  describe 'EXTENDED' do
    context 'when resource not exists' do
      it 'fetches extended information' do
        expect { MangoPay::PayIn::Card::Web.extended(1000000) }.to \
          raise_error(MangoPay::ResponseError)
      end
    end
  end

  describe 'FETCH' do
    it 'fetches a payin' do
      created = new_payin_card_web
      fetched = MangoPay::PayIn.fetch(created['Id'])
      expect(fetched['Id']).to eq(created['Id'])
      expect(fetched['CreationDate']).to eq(created['CreationDate'])
      expect(fetched['CreditedFunds']).to eq(created['CreditedFunds'])
      expect(fetched['CreditedWalletId']).to eq(created['CreditedWalletId'])
      check_type_and_status(created)
      check_type_and_status(fetched)
    end
  end

end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
mangopay-3.0.30.1 spec/mangopay/payin_card_web_spec.rb
mangopay-3.0.30 spec/mangopay/payin_card_web_spec.rb
mangopay-3.0.29 spec/mangopay/payin_card_web_spec.rb
mangopay-3.0.28 spec/mangopay/payin_card_web_spec.rb
mangopay-3.0.27 spec/mangopay/payin_card_web_spec.rb
mangopay-3.0.26 spec/mangopay/payin_card_web_spec.rb