Sha256: cb2df1a9450e9b9d62cbe6e1ed3e84282c33ee11429fd76334d50cc756a66a99

Contents?: true

Size: 1.1 KB

Versions: 6

Compression:

Stored size: 1.1 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

RSpec.describe 'New Refund creation', :js do
  stub_authorization!

  let(:order) { create :order_ready_to_ship }
  let(:payment) { order.payments.first }
  let(:amount) { '10.99' }
  let!(:reason) { create :refund_reason }

  it 'creates a new refund' do
    visit spree.new_admin_order_payment_refund_path(order, payment)
    expect(page).not_to have_selector 'td', text: amount
    within '.new_refund' do
      fill_in 'refund_amount', with: amount
      select reason.name, from: 'Reason'
      click_button 'Refund'
    end
    expect(page).to have_content 'Refund has been successfully created!'
    expect(page).to have_selector 'td', text: amount
  end

  it 'disables the button at submit' do
    visit spree.new_admin_order_payment_refund_path(order, payment)
    page.execute_script "$('form').submit(function(e) { e.preventDefault()})"
    within '.new_refund' do
      fill_in 'refund_amount', with: amount
      select reason.name, from: 'Reason'
      click_button 'Refund'
      expect(page).to have_button('Refund', disabled: true)
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
solidus_backend-2.10.5 spec/features/admin/orders/new_refund_spec.rb
solidus_backend-2.10.3 spec/features/admin/orders/new_refund_spec.rb
solidus_backend-2.10.2 spec/features/admin/orders/new_refund_spec.rb
solidus_backend-2.10.1 spec/features/admin/orders/new_refund_spec.rb
solidus_backend-2.10.0 spec/features/admin/orders/new_refund_spec.rb
solidus_backend-2.10.0.beta1 spec/features/admin/orders/new_refund_spec.rb