Sha256: 09606a3143307fdd1a3aabaefe53a71c70bc466e73b00f01a469f66b18ecffc7

Contents?: true

Size: 1.34 KB

Versions: 6

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_successful }

      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_successful }

      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

6 entries across 6 versions & 1 rubygems

Version Path
solidus_backend-2.5.2 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.5.1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.5.0 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.5.0.rc1 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.5.0.beta2 spec/controllers/spree/admin/prices_controller_spec.rb
solidus_backend-2.5.0.beta1 spec/controllers/spree/admin/prices_controller_spec.rb