From da464f010dbd05a41df4bd71a6fead897731309a Mon Sep 17 00:00:00 2001 From: Daniela Feitosa Date: Tue, 2 Dec 2014 22:59:16 -0300 Subject: [PATCH] Prevent templates from being destroyed --- app/models/user.rb | 1 + test/unit/user_activation_job_test.rb | 2 +- test/unit/user_test.rb | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/app/models/user.rb b/app/models/user.rb index 4f58793..af05e33 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -350,6 +350,7 @@ class User < ActiveRecord::Base end def delay_activation_check + return if person.is_template? Delayed::Job.enqueue(UserActivationJob.new(self.id), {:priority => 0, :run_at => 72.hours.from_now}) end end diff --git a/test/unit/user_activation_job_test.rb b/test/unit/user_activation_job_test.rb index a2d0a23..8c3775c 100644 --- a/test/unit/user_activation_job_test.rb +++ b/test/unit/user_activation_job_test.rb @@ -34,7 +34,7 @@ class NotifyActivityToProfilesJobTest < ActiveSupport::TestCase user.person.is_template = true user.person.save job = UserActivationJob.new(user.id) - assert_no_difference User, :count do + assert_no_difference 'User.count' do job.perform process_delayed_job_queue end diff --git a/test/unit/user_test.rb b/test/unit/user_test.rb index ca72ff0..8ceb5ec 100644 --- a/test/unit/user_test.rb +++ b/test/unit/user_test.rb @@ -525,6 +525,13 @@ class UserTest < ActiveSupport::TestCase assert_match /UserActivationJob/, Delayed::Job.last.handler end + should 'not create job to check activation to template users' do + Person.any_instance.stubs(:is_template?).returns(true) + + user = new_user + assert_equal 0, Delayed::Job.by_handler("--- !ruby/struct:UserActivationJob\nuser_id: #{user.id}\n").count + end + should 'deactivate an user' do user = new_user user.activate -- libgit2 0.21.2