Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorFelipe Artur <felipefac@gmail.com>2016-05-20 02:20:06 +0300
committerFelipe Artur <felipefac@gmail.com>2016-05-20 02:47:07 +0300
commit6fb9bf87c4f202dee9815c10cad9486a1077cc99 (patch)
tree95d66da109d5fe1f9095e0892e46c5bd01f43ebc /spec
parentfc9844e8e1955359eae5b159069a90a993c667d1 (diff)
Use the right default notification settings for non members
Diffstat (limited to 'spec')
-rw-r--r--spec/controllers/projects_controller_spec.rb7
-rw-r--r--spec/services/merge_requests/update_service_spec.rb1
-rw-r--r--spec/services/notification_service_spec.rb19
3 files changed, 11 insertions, 16 deletions
diff --git a/spec/controllers/projects_controller_spec.rb b/spec/controllers/projects_controller_spec.rb
index 685fe9ffe0b..91b46c4d65c 100644
--- a/spec/controllers/projects_controller_spec.rb
+++ b/spec/controllers/projects_controller_spec.rb
@@ -24,20 +24,20 @@ describe ProjectsController do
context "and does not have notification setting" do
it "initializes notification as disabled" do
get :show, namespace_id: public_project.namespace.path, id: public_project.path
- expect(assigns(:notification_setting).level).to eq("disabled")
+ expect(assigns(:notification_setting).level).to eq("global")
end
end
context "and has notification setting" do
before do
setting = user.notification_settings_for(public_project)
- setting.level = :global
+ setting.level = :watch
setting.save
end
it "shows current notification setting" do
get :show, namespace_id: public_project.namespace.path, id: public_project.path
- expect(assigns(:notification_setting).level).to eq("global")
+ expect(assigns(:notification_setting).level).to eq("watch")
end
end
end
@@ -45,6 +45,7 @@ describe ProjectsController do
context "rendering default project view" do
render_views
+
it "renders the activity view" do
allow(controller).to receive(:current_user).and_return(user)
allow(user).to receive(:project_view).and_return('activity')
diff --git a/spec/services/merge_requests/update_service_spec.rb b/spec/services/merge_requests/update_service_spec.rb
index e872fc0eed2..213e8c2eb3a 100644
--- a/spec/services/merge_requests/update_service_spec.rb
+++ b/spec/services/merge_requests/update_service_spec.rb
@@ -17,7 +17,6 @@ describe MergeRequests::UpdateService, services: true do
before do
project.team << [user, :master]
project.team << [user2, :developer]
- project.team << [user3, :developer]
end
describe 'execute' do
diff --git a/spec/services/notification_service_spec.rb b/spec/services/notification_service_spec.rb
index 4bf8fcde4dd..cef5e0d8659 100644
--- a/spec/services/notification_service_spec.rb
+++ b/spec/services/notification_service_spec.rb
@@ -35,7 +35,7 @@ describe NotificationService, services: true do
describe 'Notes' do
context 'issue note' do
- let(:project) { create(:empty_project, :internal) }
+ let(:project) { create(:empty_project, :private) }
let(:issue) { create(:issue, project: project, assignee: create(:user)) }
let(:mentioned_issue) { create(:issue, assignee: issue.assignee) }
let(:note) { create(:note_on_issue, noteable: issue, project_id: issue.project_id, note: '@mention referenced, @outsider also') }
@@ -52,8 +52,8 @@ describe NotificationService, services: true do
it do
add_users_with_subscription(note.project, issue)
- # Ensure create SentNotification by noteable = issue 7 times, not noteable = note
- expect(SentNotification).to receive(:record).with(issue, any_args).exactly(8).times
+ # Ensure create SentNotification by noteable = issue 6 times, not noteable = note
+ expect(SentNotification).to receive(:record).with(issue, any_args).exactly(7).times
ActionMailer::Base.deliveries.clear
@@ -66,7 +66,7 @@ describe NotificationService, services: true do
should_email(@subscriber)
should_email(@watcher_and_subscriber)
should_email(@subscribed_participant)
- should_email(@u_guest_watcher)
+ should_not_email(@u_guest_watcher)
should_not_email(note.author)
should_not_email(@u_participating)
should_not_email(@u_disabled)
@@ -101,7 +101,7 @@ describe NotificationService, services: true do
should_email(note.noteable.author)
should_email(note.noteable.assignee)
should_email(@u_mentioned)
- should_email(@u_guest_watcher)
+ should_not_email(@u_guest_watcher)
should_not_email(@u_watcher)
should_not_email(note.author)
should_not_email(@u_participating)
@@ -121,10 +121,7 @@ describe NotificationService, services: true do
let(:note) { create(:note_on_issue, noteable: confidential_issue, project: project, note: "#{author.to_reference} #{assignee.to_reference} #{non_member.to_reference} #{member.to_reference} #{admin.to_reference}") }
it 'filters out users that can not read the issue' do
- project.team << [admin, :master]
- project.team << [author, :developer]
project.team << [member, :developer]
- project.team << [assignee, :developer]
expect(SentNotification).to receive(:record).with(confidential_issue, any_args).exactly(4).times
@@ -148,7 +145,7 @@ describe NotificationService, services: true do
before do
build_team(note.project)
- note.project.team << [[note.author, note.noteable.author, note.noteable.assignee], :master]
+ note.project.team << [note.author, :master]
ActionMailer::Base.deliveries.clear
end
@@ -190,7 +187,7 @@ describe NotificationService, services: true do
before do
build_team(note.project)
- note.project.team << [[note.author, note.noteable.author], :master]
+ note.project.team << [note.author, :master]
ActionMailer::Base.deliveries.clear
end
@@ -269,7 +266,6 @@ describe NotificationService, services: true do
before do
build_team(issue.project)
add_users_with_subscription(issue.project, issue)
- project.team << [[issue.assignee, issue.author], :developer]
ActionMailer::Base.deliveries.clear
end
@@ -510,7 +506,6 @@ describe NotificationService, services: true do
before do
build_team(merge_request.target_project)
add_users_with_subscription(merge_request.target_project, merge_request)
- project.team << [merge_request.assignee, :developer]
ActionMailer::Base.deliveries.clear
end