Skip to content
Snippets Groups Projects
Unverified Commit 20509d72 authored by Sébastien Gaya's avatar Sébastien Gaya
Browse files

variant service does not fail when format is missing

parent 3c387eba
No related branches found
No related tags found
No related merge requests found
......@@ -55,7 +55,7 @@ class VariantService
end
end
transformations[:format] = @format if @format != @blob.filename.extension_without_delimiter
transformations[:format] = @format if @format.present? && @format != @blob.filename.extension_without_delimiter
transformations
end
end
......
......@@ -31,6 +31,8 @@ class VariantServiceTest < ActiveSupport::TestCase
# dan-gold_1000x500_crop_left.jpeg
# dan-gold_1500x500_crop_left.jpeg
# dan-gold_800x840_crop_left.jpeg
# dan-gold
# dan-gold_500x500
# Params tests
......@@ -155,6 +157,21 @@ class VariantServiceTest < ActiveSupport::TestCase
assert_equal expected_params, variant_service.params
end
test "params for dan-gold" do
blob = create_file_blob(filename: "dan-gold.jpeg")
expected_params = {}
variant_service = VariantService.compute(blob, 'dan-gold', nil)
assert_equal expected_params, variant_service.params
assert_nil variant_service.format
end
test "params for dan-gold_500x500" do
blob = create_file_blob(filename: "dan-gold.jpeg")
expected_params = { size: '500x500' }
variant_service = VariantService.compute(blob, 'dan-gold_500x500', nil)
assert_equal expected_params, variant_service.params
end
# Transformations tests
test "transformations for dan-gold.jpeg" do
......@@ -291,6 +308,20 @@ class VariantServiceTest < ActiveSupport::TestCase
assert_equal expected_transformations, variant_service.transformations
end
test "transformations for dan-gold" do
blob = create_file_blob(filename: "dan-gold.jpeg")
expected_transformations = {}
variant_service = VariantService.compute(blob, 'dan-gold', nil)
assert_equal expected_transformations, variant_service.transformations
end
test "transformations for dan-gold_500x500" do
blob = create_file_blob(filename: "dan-gold.jpeg")
expected_transformations = { resize_to_limit: [500, 500] }
variant_service = VariantService.compute(blob, 'dan-gold_500x500', nil)
assert_equal expected_transformations, variant_service.transformations
end
# Variants tests
test "variant for dan-gold.webp" do
......@@ -390,6 +421,19 @@ class VariantServiceTest < ActiveSupport::TestCase
assert_equal expected_blob.checksum, image_checksum(image)
end
test "variant for dan-gold" do
expected_blob = create_file_blob(filename: "dan-gold.jpeg")
image = load_image_from_variant_name(expected_blob.filename.base, format: nil)
assert_equal "JPEG", image.type
assert_equal expected_blob.checksum, image_checksum(image)
end
test "variant for dan-gold_500x500" do
expected_blob = create_file_blob(filename: "dan-gold_500x500.jpeg")
image = load_image_from_variant_name(expected_blob.filename.base, format: nil)
assert_equal expected_blob.checksum, image_checksum(image)
end
private
def create_file_blob(key: nil, filename: "dan-gold.jpeg", content_type: "image/jpeg", metadata: nil, service_name: nil, record: nil)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment