Sha256: 7043262cb7f6e3c6debae6f7ec131f412d01d2915f5c54082e9136510c948fc2
Contents?: true
Size: 995 Bytes
Versions: 13
Compression:
Stored size: 995 Bytes
Contents
RSpec.describe Spree::ProductsController, type: :controller do let!(:product) { create(:product, available_on: 1.year.from_now) } let!(:user) { build_stubbed(:user, spree_api_key: 'fake') } subject(:request) { get :show, params: { id: product.to_param }} before do allow(controller).to receive(:before_save_new_order) allow(controller).to receive(:spree_current_user) { user } end it 'allows admins to view non-active products' do allow(user).to receive(:has_spree_role?) { true } request expect(response.status).to eq(200) end it 'cannot view non-active products' do allow(user).to receive(:has_spree_role?) { false } # this behaviour was introduced in rails 5.1 & Spree 3.5 # https://github.com/spree/spree/commit/acf52960f5b9582cdfe01f0cb563766b44aabbd5 if Spree.version.to_f > 3.4 expect { request }.to raise_error(ActiveRecord::RecordNotFound) else request expect(response.status).to eq(404) end end end
Version data entries
13 entries across 13 versions & 1 rubygems