From 1dd6606161bea762cefe14c7a39f79a8c0b43dd7 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Sat, 22 Jun 2013 10:56:51 +0300 Subject: [PATCH] Send project transfer email to all members. Added specs for project move email --- app/mailers/emails/projects.rb | 8 ++++---- app/models/project.rb | 4 ++-- spec/mailers/notify_spec.rb | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+), 6 deletions(-) diff --git a/app/mailers/emails/projects.rb b/app/mailers/emails/projects.rb index dcd894b..1ad7ca5 100644 --- a/app/mailers/emails/projects.rb +++ b/app/mailers/emails/projects.rb @@ -8,10 +8,10 @@ module Emails end - def project_was_moved_email(user_project_id) - @users_project = UsersProject.find user_project_id - @project = @users_project.project - mail(to: @users_project.user.email, + def project_was_moved_email(project_id, user_id) + @user = User.find user_id + @project = Project.find project_id + mail(to: @user.email, subject: subject("project was moved")) end end diff --git a/app/models/project.rb b/app/models/project.rb index f36385c..c1405a7 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -246,8 +246,8 @@ class Project < ActiveRecord::Base end def send_move_instructions - self.users_projects.each do |member| - Notify.delay.project_was_moved_email(member.id) + team.members.each do |user| + Notify.delay.project_was_moved_email(self.id, user.id) end end diff --git a/spec/mailers/notify_spec.rb b/spec/mailers/notify_spec.rb index d2e1e8a..7290e2b 100644 --- a/spec/mailers/notify_spec.rb +++ b/spec/mailers/notify_spec.rb @@ -218,6 +218,24 @@ describe Notify do end end + describe 'project was moved' do + let(:project) { create(:project) } + let(:user) { create(:user) } + subject { Notify.project_was_moved_email(project.id, user.id) } + + it 'has the correct subject' do + should have_subject /project was moved/ + end + + it 'contains name of project' do + should have_body_text /#{project.name_with_namespace}/ + end + + it 'contains new user role' do + should have_body_text /#{project.ssh_url_to_repo}/ + end + end + describe 'project access changed' do let(:project) { create(:project) } let(:user) { create(:user) } -- libgit2 0.21.2