Sha256: 87fee9ed062ff38bdad48e46ed73d7cb9c0f17acbe378633230fb1bfad0a13f3
Contents?: true
Size: 990 Bytes
Versions: 12
Compression:
Stored size: 990 Bytes
Contents
# frozen_string_literal: true describe Spotlight::ViewConfigurationsController, type: :controller do routes { Spotlight::Engine.routes } let(:exhibit) { FactoryBot.create(:exhibit) } describe 'when the user is not authorized' do before do sign_in FactoryBot.create(:exhibit_visitor) end describe 'GET show' do it 'denies access' do get :show, params: { exhibit_id: exhibit } expect(response).to redirect_to main_app.root_path expect(flash[:alert]).to be_present end end end describe 'when signed in' do let(:user) { FactoryBot.create(:exhibit_admin, exhibit: exhibit) } before { sign_in user } describe 'GET show' do it 'is successful' do get :show, params: { exhibit_id: exhibit, format: 'json' } expect(response).to be_successful available = JSON.parse(response.body) expect(available).to match_array %w[list gallery masonry slideshow] end end end end
Version data entries
12 entries across 12 versions & 1 rubygems