From 24eb1b155f73054403235dd9211b2dcb7ac4d87c Mon Sep 17 00:00:00 2001 From: evazion Date: Fri, 16 Aug 2019 20:49:34 -0500 Subject: [PATCH] jobs: migrate pool category updates to ActiveJob. --- app/jobs/update_pool_pseudo_tags_job.rb | 8 ++++++++ app/models/pool.rb | 2 +- test/unit/pool_test.rb | 6 ++++-- 3 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 app/jobs/update_pool_pseudo_tags_job.rb diff --git a/app/jobs/update_pool_pseudo_tags_job.rb b/app/jobs/update_pool_pseudo_tags_job.rb new file mode 100644 index 000000000..3c827e504 --- /dev/null +++ b/app/jobs/update_pool_pseudo_tags_job.rb @@ -0,0 +1,8 @@ +class UpdatePoolPseudoTagsJob < ApplicationJob + queue_as :default + queue_with_priority 20 + + def perform(pool) + pool.update_category_pseudo_tags_for_posts + end +end diff --git a/app/models/pool.rb b/app/models/pool.rb index 0ec530f48..19595c691 100644 --- a/app/models/pool.rb +++ b/app/models/pool.rb @@ -291,7 +291,7 @@ class Pool < ApplicationRecord def update_category_pseudo_tags_for_posts_async if saved_change_to_category? - delay(:queue => "default").update_category_pseudo_tags_for_posts + UpdatePoolPseudoTagsJob.perform_later(self) end end diff --git a/test/unit/pool_test.rb b/test/unit/pool_test.rb index d2ef787dd..fa1fd8fdc 100644 --- a/test/unit/pool_test.rb +++ b/test/unit/pool_test.rb @@ -267,8 +267,10 @@ class PoolTest < ActiveSupport::TestCase end should "allow Builders to change the category of large pools" do - @builder = FactoryBot.create(:builder_user) - as(@builder) { @pool.update(category: "collection") } + perform_enqueued_jobs do + @builder = create(:builder_user) + as(@builder) { @pool.update(category: "collection") } + end assert_equal(true, @pool.valid?) assert_equal("collection", @pool.category)