FEATURE: ensure consistency of post uploads in cooked content

This commit is contained in:
Vinoth Kannan
2019-04-04 02:23:28 +05:30
parent 14952a9cbc
commit b3fb0a7039
4 changed files with 119 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
require 'rails_helper'
describe Jobs::EnsurePostUploadsExistence do
context '.execute' do
let(:upload) { Fabricate(:upload) }
let(:optimized) { Fabricate(:optimized_image, url: '/uploads/default/optimized/1X/d1c2d40ab994e8410c_100x200.png') }
it 'should create post custom field for missing upload' do
post = Fabricate(:post, cooked: "A sample post <img src='#{upload.url}'>")
upload.destroy!
described_class.new.execute({})
field = PostCustomField.last
expect(field.name).to eq(Jobs::EnsurePostUploadsExistence::MISSING_UPLOADS)
expect(field.value).to eq(upload.url)
end
it 'should not create post custom fields' do
post = Fabricate(:post, cooked: "A sample post <a href='#{upload.url}'> <img src='#{optimized.url}'>")
expect {
described_class.new.execute({})
}.not_to change {
PostCustomField.count
}
end
end
end