diff options
-rw-r--r-- | spec/controllers/admin/base_controller_spec.rb | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/spec/controllers/admin/base_controller_spec.rb b/spec/controllers/admin/base_controller_spec.rb new file mode 100644 index 000000000..2b60e7e92 --- /dev/null +++ b/spec/controllers/admin/base_controller_spec.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe Admin::BaseController, type: :controller do + controller do + def success + render 'admin/reports/show' + end + end + + it 'renders admin layout' do + routes.draw { get 'success' => 'admin/base#success' } + sign_in(Fabricate(:user, admin: true)) + get :success + expect(response).to render_template layout: 'admin' + end + + it 'requires administrator' do + routes.draw { get 'success' => 'admin/base#success' } + sign_in(Fabricate(:user, admin: false)) + get :success + + expect(response).to redirect_to('/') + end +end |