2022-04-20 14:11:39 +10:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2022-07-28 05:27:38 +03:00
|
|
|
RSpec.describe Jobs::UpdatePostUploadsSecureStatus do
|
2023-11-09 16:47:59 -06:00
|
|
|
fab!(:post)
|
2022-04-20 14:11:39 +10:00
|
|
|
|
|
|
|
before do
|
2022-06-09 02:24:30 +03:00
|
|
|
UploadReference.create!(target: post, upload: Fabricate(:upload))
|
|
|
|
UploadReference.create!(target: post, upload: Fabricate(:upload))
|
2022-04-20 14:11:39 +10:00
|
|
|
end
|
|
|
|
|
|
|
|
context "when secure uploads is enabled" do
|
|
|
|
before do
|
|
|
|
setup_s3
|
|
|
|
stub_s3_store
|
2022-09-29 09:24:33 +10:00
|
|
|
SiteSetting.secure_uploads = true
|
2022-04-20 14:11:39 +10:00
|
|
|
end
|
|
|
|
|
|
|
|
context "when login_required" do
|
|
|
|
before { SiteSetting.login_required = true }
|
|
|
|
|
|
|
|
it "updates all the uploads to secure" do
|
|
|
|
described_class.new.execute(post_id: post.id)
|
|
|
|
post.reload
|
2022-06-09 02:24:30 +03:00
|
|
|
expect(post.upload_references.map(&:upload).map(&:secure).all?(true)).to eq(true)
|
2022-04-20 14:11:39 +10:00
|
|
|
end
|
|
|
|
|
|
|
|
it "updates all the uploads to secure even if their extension is not authorized" do
|
|
|
|
SiteSetting.authorized_extensions = ""
|
|
|
|
described_class.new.execute(post_id: post.id)
|
|
|
|
post.reload
|
2022-06-09 02:24:30 +03:00
|
|
|
expect(post.upload_references.map(&:upload).map(&:secure).all?(true)).to eq(true)
|
2022-04-20 14:11:39 +10:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|