# frozen_string_literal: true require 'rails_helper' RSpec.describe SafeModeController do describe 'index' do it 'never includes customizations' do theme = Fabricate(:theme) theme.set_field(target: :common, name: "header", value: "My Custom Header") theme.save! theme.set_default! get '/safe-mode' expect(response.body).not_to include("My Custom Header") end end describe 'enter' do context 'when no params are given' do it 'should redirect back to safe mode page' do post '/safe-mode' expect(response.status).to redirect_to(safe_mode_path) end end context 'when safe mode is not enabled' do it 'should raise an error' do SiteSetting.enable_safe_mode = false post '/safe-mode' expect(response.status).to eq(404) end it "doesn't raise an error for staff" do SiteSetting.enable_safe_mode = false sign_in(Fabricate(:moderator)) post '/safe-mode' expect(response.status).to redirect_to(safe_mode_path) end end end end