Move repo rename email to notification service
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
This commit is contained in:
parent
065d9c22fa
commit
2e7abbd66c
|
@ -270,9 +270,7 @@ class Project < ActiveRecord::Base
|
|||
end
|
||||
|
||||
def send_move_instructions
|
||||
team.members.each do |user|
|
||||
Notify.delay.project_was_moved_email(self.id, user.id)
|
||||
end
|
||||
NotificationService.new.project_was_moved(self)
|
||||
end
|
||||
|
||||
def owner
|
||||
|
|
|
@ -157,6 +157,15 @@ class NotificationService
|
|||
mailer.group_access_granted_email(users_group.id)
|
||||
end
|
||||
|
||||
def project_was_moved(project)
|
||||
recipients = project.team.members
|
||||
recipients = reject_muted_users(recipients, project)
|
||||
|
||||
recipients.each do |recipient|
|
||||
mailer.project_was_moved_email(project.id, recipient.id)
|
||||
end
|
||||
end
|
||||
|
||||
protected
|
||||
|
||||
# Get project users with WATCH notification level
|
||||
|
|
|
@ -233,6 +233,31 @@ describe NotificationService do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'Projects' do
|
||||
let(:project) { create :project }
|
||||
|
||||
before do
|
||||
build_team(project)
|
||||
end
|
||||
|
||||
describe :project_was_moved do
|
||||
it do
|
||||
should_email(@u_watcher.id)
|
||||
should_email(@u_participating.id)
|
||||
should_not_email(@u_disabled.id)
|
||||
notification.project_was_moved(project)
|
||||
end
|
||||
|
||||
def should_email(user_id)
|
||||
Notify.should_receive(:project_was_moved_email).with(project.id, user_id)
|
||||
end
|
||||
|
||||
def should_not_email(user_id)
|
||||
Notify.should_not_receive(:project_was_moved_email).with(project.id, user_id)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def build_team(project)
|
||||
@u_watcher = create(:user, notification_level: Notification::N_WATCH)
|
||||
@u_participating = create(:user, notification_level: Notification::N_PARTICIPATING)
|
||||
|
|
Loading…
Reference in New Issue