Sha256: 73c242196c6d032423ae104f241580dda565439d20039b12d93b2caf13be21e0

Contents?: true

Size: 1.3 KB

Versions: 48

Compression:

Stored size: 1.3 KB

Contents

# frozen_string_literal: true

require 'rails_helper'

RSpec.describe Spree::Order, type: :model do
  let(:order) { Spree::Order.new }

  context 'validation' do
    context "when @use_billing is populated" do
      before do
        order.bill_address = stub_model(Spree::Address)
        order.ship_address = nil
      end

      context "with true" do
        before { order.use_billing = true }

        it "clones the bill address to the ship address" do
          order.valid?
          expect(order.ship_address).to eq(order.bill_address)
        end
      end

      context "with 'true'" do
        before { order.use_billing = 'true' }

        it "clones the bill address to the shipping" do
          order.valid?
          expect(order.ship_address).to eq(order.bill_address)
        end
      end

      context "with '1'" do
        before { order.use_billing = '1' }

        it "clones the bill address to the shipping" do
          order.valid?
          expect(order.ship_address).to eq(order.bill_address)
        end
      end

      context "with something other than a 'truthful' value" do
        before { order.use_billing = '0' }

        it "does not clone the bill address to the shipping" do
          order.valid?
          expect(order.ship_address).to be_nil
        end
      end
    end
  end
end

Version data entries

48 entries across 48 versions & 2 rubygems

Version Path
solidus_core-2.10.5 spec/models/spree/order/address_spec.rb
solidus_core-2.10.3 spec/models/spree/order/address_spec.rb
solidus_core-2.10.2 spec/models/spree/order/address_spec.rb
solidus_core-2.9.6 spec/models/spree/order/address_spec.rb
solidus_core-2.8.6 spec/models/spree/order/address_spec.rb
solidus_core-2.10.1 spec/models/spree/order/address_spec.rb
solidus_core-2.9.5 spec/models/spree/order/address_spec.rb
solidus_core-2.10.0 spec/models/spree/order/address_spec.rb
solidus_core-2.9.4 spec/models/spree/order/address_spec.rb
solidus_core-2.6.6 spec/models/spree/order/address_spec.rb
solidus_core-2.7.4 spec/models/spree/order/address_spec.rb
solidus_core-2.8.5 spec/models/spree/order/address_spec.rb
solidus_core-2.9.3 spec/models/spree/order/address_spec.rb
solidus_core-2.9.2 spec/models/spree/order/address_spec.rb
solidus_core-2.10.0.beta1 spec/models/spree/order/address_spec.rb
solidus_core-2.7.3 spec/models/spree/order/address_spec.rb
solidus_core-2.6.5 spec/models/spree/order/address_spec.rb
solidus_core-2.9.1 spec/models/spree/order/address_spec.rb
solidus_core-2.9.0 spec/models/spree/order/address_spec.rb
solidus_core-2.9.0.rc.1 spec/models/spree/order/address_spec.rb