Sha256: 9f2505ea3474744937cb222795ef6b72eebbf1ba45f9915f26c5b112ba9bddc2

Contents?: true

Size: 1.34 KB

Versions: 20

Compression:

Stored size: 1.34 KB

Contents

require 'spec_helper'

describe Spree::Admin::PricesController do
  stub_authorization!

  let!(:product) { create(:product) }

  describe '#index' do
    context "when only given a product" do
      let(:product) { create(:product) }

      subject { get :index, params: { product_id: product.slug } }

      it { is_expected.to be_success }

      it 'assigns usable instance variables' do
        subject
        expect(assigns(:search)).to be_a(Ransack::Search)
        expect(assigns(:variant_prices)).to eq(product.prices.for_variant)
        expect(assigns(:master_prices)).to eq(product.prices.for_master)
        expect(assigns(:product)).to eq(product)
      end
    end

    context "when given a product and a variant" do
      let(:variant) { create(:variant) }
      let(:product) { variant.product }

      subject { get :index, params: { product_id: product.slug, variant_id: variant.id } }

      it { is_expected.to be_success }

      it 'assigns usable instance variables' do
        subject
        expect(assigns(:search)).to be_a(Ransack::Search)
        expect(assigns(:variant_prices)).to eq(product.prices.for_variant)
        expect(assigns(:master_prices)).to eq(product.prices.for_master)
        expect(assigns(:variant_prices)).to include(variant.default_price)
        expect(assigns(:product)).to eq(product)
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
solidus_backend-2.4.2 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.4.1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.3.1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.2.2 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.1.1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.4.0 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.4.0.rc1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.4.0.beta1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.3.0 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.3.0.rc3 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.3.0.rc2 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.3.0.rc1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.3.0.beta1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.2.1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.2.0 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.2.0.rc1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.2.0.beta1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.1.0 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.1.0.rc1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.1.0.beta1 spec/controllers/spree/admin/prices_controller_spec.rb