Commit 1dd6606161bea762cefe14c7a39f79a8c0b43dd7

Authored by Dmitriy Zaporozhets
1 parent dc0f08f8

Send project transfer email to all members. Added specs for project move email

app/mailers/emails/projects.rb
... ... @@ -8,10 +8,10 @@ module Emails
8 8 end
9 9  
10 10  
11   - def project_was_moved_email(user_project_id)
12   - @users_project = UsersProject.find user_project_id
13   - @project = @users_project.project
14   - mail(to: @users_project.user.email,
  11 + def project_was_moved_email(project_id, user_id)
  12 + @user = User.find user_id
  13 + @project = Project.find project_id
  14 + mail(to: @user.email,
15 15 subject: subject("project was moved"))
16 16 end
17 17 end
... ...
app/models/project.rb
... ... @@ -246,8 +246,8 @@ class Project < ActiveRecord::Base
246 246 end
247 247  
248 248 def send_move_instructions
249   - self.users_projects.each do |member|
250   - Notify.delay.project_was_moved_email(member.id)
  249 + team.members.each do |user|
  250 + Notify.delay.project_was_moved_email(self.id, user.id)
251 251 end
252 252 end
253 253  
... ...
spec/mailers/notify_spec.rb
... ... @@ -218,6 +218,24 @@ describe Notify do
218 218 end
219 219 end
220 220  
  221 + describe 'project was moved' do
  222 + let(:project) { create(:project) }
  223 + let(:user) { create(:user) }
  224 + subject { Notify.project_was_moved_email(project.id, user.id) }
  225 +
  226 + it 'has the correct subject' do
  227 + should have_subject /project was moved/
  228 + end
  229 +
  230 + it 'contains name of project' do
  231 + should have_body_text /#{project.name_with_namespace}/
  232 + end
  233 +
  234 + it 'contains new user role' do
  235 + should have_body_text /#{project.ssh_url_to_repo}/
  236 + end
  237 + end
  238 +
221 239 describe 'project access changed' do
222 240 let(:project) { create(:project) }
223 241 let(:user) { create(:user) }
... ...