uploads: switch to active job.

* Switch upload processing from DelayedJob to ActiveJob.
* Remove remaining references to delayed job from tests.

Closes #4128.
This commit is contained in:
evazion
2019-09-23 15:11:18 -05:00
parent 8de6925807
commit 0a6661d145
9 changed files with 30 additions and 36 deletions

View File

@@ -37,7 +37,7 @@ class UploadsControllerTest < ActionDispatch::IntegrationTest
file = Rack::Test::UploadedFile.new("#{Rails.root}/test/files/test.jpg", "image/jpeg")
post_auth preprocess_uploads_path, @user, params: {:upload => {:source => "https://raikou1.donmai.us/d3/4e/d34e4cf0a437a5d65f8e82b7bcd02606.jpg", :file => file}}
assert_response :success
Delayed::Worker.new.work_off
perform_enqueued_jobs
assert_equal("ecef68c44edb8a0d6a3070b5f8e8ee76", Upload.last.md5)
end
end
@@ -52,13 +52,14 @@ class UploadsControllerTest < ActionDispatch::IntegrationTest
should "preprocess" do
assert_difference(-> { Upload.count }) do
get_auth new_upload_path, @user, params: {:url => "https://raikou1.donmai.us/d3/4e/d34e4cf0a437a5d65f8e82b7bcd02606.jpg"}
perform_enqueued_jobs
assert_response :success
end
end
should "prefer the file" do
get_auth new_upload_path, @user, params: {url: "https://raikou1.donmai.us/d3/4e/d34e4cf0a437a5d65f8e82b7bcd02606.jpg"}
Delayed::Worker.new.work_off
perform_enqueued_jobs
file = Rack::Test::UploadedFile.new("#{Rails.root}/test/files/test.jpg", "image/jpeg")
assert_difference(-> { Post.count }) do
post_auth uploads_path, @user, params: {upload: {file: file, tag_string: "aaa", rating: "q", source: "https://raikou1.donmai.us/d3/4e/d34e4cf0a437a5d65f8e82b7bcd02606.jpg"}}
@@ -77,7 +78,7 @@ class UploadsControllerTest < ActionDispatch::IntegrationTest
should "trigger the preprocessor" do
assert_difference(-> { Upload.preprocessed.count }, 1) do
get_auth new_upload_path, @user, params: {:url => @source, :ref => @ref}
Delayed::Worker.new.work_off
perform_enqueued_jobs
end
end
end
@@ -97,7 +98,7 @@ class UploadsControllerTest < ActionDispatch::IntegrationTest
skip "Twitter keys are not set" unless Danbooru.config.twitter_api_key
get_auth new_upload_path, @user, params: {:url => @source}
assert_response :success
Delayed::Worker.new.work_off
perform_enqueued_jobs
upload = Upload.last
assert_equal(@source, upload.source)
end
@@ -112,7 +113,7 @@ class UploadsControllerTest < ActionDispatch::IntegrationTest
should "trigger the preprocessor" do
assert_difference(-> { Upload.preprocessed.count }, 1) do
get_auth new_upload_path, @user, params: {:url => @source, :ref => @ref}
Delayed::Worker.new.work_off
perform_enqueued_jobs
end
end
end