Merge pull request 'Allow selecting image type via Regexp' (#6) from feature/select_type_regex into master
All checks were successful
continuous-integration/drone/push Build is passing

Reviewed-on: #6
This commit is contained in:
Râu Cao 2024-08-14 14:14:34 +00:00
commit a070bb6a49
2 changed files with 17 additions and 1 deletions

View File

@ -43,7 +43,13 @@ module Manifique
end
if options[:type]
results.reject! { |r| r["type"] != options[:type] }
if options[:type].is_a?(String)
results.reject! { |r| r["type"] != options[:type] }
elsif options[:type].is_a?(Regexp)
results.reject! { |r| r["type"].match(options[:type]).nil? }
else
raise ArgumentError, "Type must be a string or a regular expression"
end
end
if options[:sizes]

View File

@ -68,6 +68,16 @@ RSpec.describe Manifique::Metadata do
icon = metadata.select_icon(type: "image/png")
expect(icon["sizes"]).to eq("512x512")
end
it "matches strings exactly" do
icon = metadata.select_icon(type: "image/svg")
expect(icon["type"]).to eq("image/svg")
end
it "works with a regex" do
icon = metadata.select_icon(type: /image\/svg/)
expect(icon["type"]).to eq("image/svg+xml")
end
end
describe "by size" do