Commit 108f6a2103dd2a2484686139b0b65aa4895ef641
Exists in
master
and in
21 other branches
Merge branch 'stable'
Showing
2 changed files
with
12 additions
and
1 deletions
Show diff stats
lib/user_activation_job.rb
| 1 | class UserActivationJob < Struct.new(:user_id) | 1 | class UserActivationJob < Struct.new(:user_id) |
| 2 | def perform | 2 | def perform |
| 3 | user = User.find(user_id) | 3 | user = User.find(user_id) |
| 4 | - user.destroy unless user.activated? | 4 | + user.destroy unless user.activated? || user.person.is_template? |
| 5 | end | 5 | end |
| 6 | end | 6 | end |
test/unit/user_activation_job_test.rb
| @@ -29,6 +29,17 @@ class NotifyActivityToProfilesJobTest < ActiveSupport::TestCase | @@ -29,6 +29,17 @@ class NotifyActivityToProfilesJobTest < ActiveSupport::TestCase | ||
| 29 | end | 29 | end |
| 30 | end | 30 | end |
| 31 | 31 | ||
| 32 | + should 'not destroy user if not activated but is template' do | ||
| 33 | + user = new_user :login => 'test3' | ||
| 34 | + user.person.is_template = true | ||
| 35 | + user.person.save | ||
| 36 | + job = UserActivationJob.new(user.id) | ||
| 37 | + assert_no_difference User, :count do | ||
| 38 | + job.perform | ||
| 39 | + process_delayed_job_queue | ||
| 40 | + end | ||
| 41 | + end | ||
| 42 | + | ||
| 32 | protected | 43 | protected |
| 33 | def new_user(options = {}) | 44 | def new_user(options = {}) |
| 34 | user = User.new({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options)) | 45 | user = User.new({ :login => 'quire', :email => 'quire@example.com', :password => 'quire', :password_confirmation => 'quire' }.merge(options)) |