Sha256: 4b8ab2773f87b6480f5dc2af81cbbbe00e0ae78ae6dab20ee6f9267564fd0ebe

Contents?: true

Size: 1.17 KB

Versions: 6

Compression:

Stored size: 1.17 KB

Contents

require 'spec_helper'

describe "checkout with unshippable items", type: :feature, inaccessible: true do
  let!(:stock_location) { create(:stock_location) }
  let(:order) { OrderWalkthrough.up_to(:address) }

  before do
    create(:line_item, order: order)
    order.reload
    line_item = order.line_items.last
    stock_item = stock_location.stock_item(line_item.variant)
    stock_item.adjust_count_on_hand(-999)
    stock_item.backorderable = false
    stock_item.save!

    user = create(:user)
    order.user = user
    order.update!

    allow_any_instance_of(Spree::CheckoutController).to receive_messages(current_order: order)
    allow_any_instance_of(Spree::CheckoutController).to receive_messages(try_spree_current_user: user)
    allow_any_instance_of(Spree::CheckoutController).to receive_messages(skip_state_validation?: true)
    allow_any_instance_of(Spree::CheckoutController).to receive_messages(ensure_sufficient_stock_lines: true)
  end

  it 'displays and removes' do
    visit spree.checkout_state_path(:delivery)
    expect(page).to have_content('Unshippable Items')

    click_button "Save and Continue"

    order.reload
    expect(order.line_items.count).to eq 1
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
solidus_frontend-1.3.2 spec/features/checkout_unshippable_spec.rb
solidus_frontend-1.3.1 spec/features/checkout_unshippable_spec.rb
solidus_frontend-1.3.0 spec/features/checkout_unshippable_spec.rb
solidus_frontend-1.3.0.rc2 spec/features/checkout_unshippable_spec.rb
solidus_frontend-1.3.0.rc1 spec/features/checkout_unshippable_spec.rb
solidus_frontend-1.3.0.beta1 spec/features/checkout_unshippable_spec.rb