summaryrefslogtreecommitdiff
path: root/spec/controllers/projects/notification_settings_controller_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/controllers/projects/notification_settings_controller_spec.rb')
-rw-r--r--spec/controllers/projects/notification_settings_controller_spec.rb39
1 files changed, 37 insertions, 2 deletions
diff --git a/spec/controllers/projects/notification_settings_controller_spec.rb b/spec/controllers/projects/notification_settings_controller_spec.rb
index 7e32a75b812..385877a26df 100644
--- a/spec/controllers/projects/notification_settings_controller_spec.rb
+++ b/spec/controllers/projects/notification_settings_controller_spec.rb
@@ -2,6 +2,11 @@ require 'spec_helper'
describe Projects::NotificationSettingsController do
let(:project) { create(:empty_project) }
+ let(:user) { create(:user) }
+
+ before do
+ project.team << [user, :developer]
+ end
describe '#create' do
context 'when not authorized' do
@@ -9,11 +14,26 @@ describe Projects::NotificationSettingsController do
post :create,
namespace_id: project.namespace.to_param,
project_id: project.to_param,
- notification_setting: { level: NotificationSetting.levels[:participating] }
+ notification_setting: { level: :participating }
expect(response).to redirect_to(new_user_session_path)
end
end
+
+ context 'when authorized' do
+ before do
+ sign_in(user)
+ end
+
+ it 'returns success' do
+ post :create,
+ namespace_id: project.namespace.to_param,
+ project_id: project.to_param,
+ notification_setting: { level: :participating }
+
+ expect(response.status).to eq 200
+ end
+ end
end
describe '#update' do
@@ -22,10 +42,25 @@ describe Projects::NotificationSettingsController do
put :update,
namespace_id: project.namespace.to_param,
project_id: project.to_param,
- notification_setting: { level: NotificationSetting.levels[:participating] }
+ notification_setting: { level: :participating }
expect(response).to redirect_to(new_user_session_path)
end
end
+
+ context 'when authorized' do
+ before do
+ sign_in(user)
+ end
+
+ it 'returns success' do
+ put :update,
+ namespace_id: project.namespace.to_param,
+ project_id: project.to_param,
+ notification_setting: { level: :participating }
+
+ expect(response.status).to eq 200
+ end
+ end
end
end