summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2017-03-30 12:05:00 +0000
committerSean McGivern <sean@mcgivern.me.uk>2017-03-30 12:05:00 +0000
commit5b84708df2b363d6a39acca356ebf28e9ff35ff5 (patch)
tree478ad02d696aa77332c63a135441ca317502b67b
parentc7403521a8d3f0410a2929784339334af4c74059 (diff)
parent5058fc67acdde120e673c24555908394c72a343b (diff)
downloadgitlab-ce-5b84708df2b363d6a39acca356ebf28e9ff35ff5.tar.gz
Merge branch 'tc-cleanup-application-settings-spec' into 'master'
Cleanup application settings spec See merge request !10189
-rw-r--r--app/controllers/admin/application_settings_controller.rb9
-rw-r--r--spec/controllers/admin/application_settings_controller_spec.rb25
2 files changed, 18 insertions, 16 deletions
diff --git a/app/controllers/admin/application_settings_controller.rb b/app/controllers/admin/application_settings_controller.rb
index 8d831ffdd70..0bfbe47eb4f 100644
--- a/app/controllers/admin/application_settings_controller.rb
+++ b/app/controllers/admin/application_settings_controller.rb
@@ -45,15 +45,6 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
end
def application_setting_params
- restricted_levels = params[:application_setting][:restricted_visibility_levels]
- if restricted_levels.nil?
- params[:application_setting][:restricted_visibility_levels] = []
- else
- restricted_levels.map! do |level|
- level.to_i
- end
- end
-
import_sources = params[:application_setting][:import_sources]
if import_sources.nil?
params[:application_setting][:import_sources] = []
diff --git a/spec/controllers/admin/application_settings_controller_spec.rb b/spec/controllers/admin/application_settings_controller_spec.rb
index 84a1ce773a1..5dd8f66343f 100644
--- a/spec/controllers/admin/application_settings_controller_spec.rb
+++ b/spec/controllers/admin/application_settings_controller_spec.rb
@@ -6,23 +6,34 @@ describe Admin::ApplicationSettingsController do
let(:admin) { create(:admin) }
before do
- sign_in(admin)
stub_env('IN_MEMORY_APPLICATION_SETTINGS', 'false')
end
- describe 'PATCH #update' do
+ describe 'PUT #update' do
+ before do
+ sign_in(admin)
+ end
+
it 'updates the default_project_visibility for string value' do
- patch :update, application_setting: { default_project_visibility: "20" }
+ put :update, application_setting: { default_project_visibility: "20" }
+
+ expect(response).to redirect_to(admin_application_settings_path)
+ expect(ApplicationSetting.current.default_project_visibility).to eq(Gitlab::VisibilityLevel::PUBLIC)
+ end
+
+ it 'update the restricted levels for string values' do
+ put :update, application_setting: { restricted_visibility_levels: %w[10 20] }
expect(response).to redirect_to(admin_application_settings_path)
- expect(ApplicationSetting.current.default_project_visibility).to eq Gitlab::VisibilityLevel::PUBLIC
+ expect(ApplicationSetting.current.restricted_visibility_levels).to eq([10, 20])
end
- it 'falls back to default with default_project_visibility setting is omitted' do
- patch :update, application_setting: {}
+ it 'falls back to defaults when settings are omitted' do
+ put :update, application_setting: {}
expect(response).to redirect_to(admin_application_settings_path)
- expect(ApplicationSetting.current.default_project_visibility).to eq Gitlab::VisibilityLevel::PRIVATE
+ expect(ApplicationSetting.current.default_project_visibility).to eq(Gitlab::VisibilityLevel::PRIVATE)
+ expect(ApplicationSetting.current.restricted_visibility_levels).to be_empty
end
end
end