Module: Depot::SourceResolver
- Defined in:
- lib/depot/source_resolver.rb
Class Method Summary collapse
- .fixture_match(source) ⇒ Object
- .https_url?(source) ⇒ Boolean
- .resolve(source) ⇒ Object
- .url?(source) ⇒ Boolean
Class Method Details
.fixture_match(source) ⇒ Object
30 31 32 33 34 |
# File 'lib/depot/source_resolver.rb', line 30 def fixture_match(source) return nil if source.empty? Dir[File.("../../fixtures/**/#{File.basename(source)}", __dir__)].first end |
.https_url?(source) ⇒ Boolean
23 24 25 26 27 28 |
# File 'lib/depot/source_resolver.rb', line 23 def https_url?(source) uri = URI.parse(source.to_s) uri.is_a?(URI::HTTPS) rescue URI::InvalidURIError false end |
.resolve(source) ⇒ Object
9 10 11 12 13 14 |
# File 'lib/depot/source_resolver.rb', line 9 def resolve(source) source = source.to_s return source if !source.empty? && File.exist?(source) fixture_match(source) end |
.url?(source) ⇒ Boolean
16 17 18 19 20 21 |
# File 'lib/depot/source_resolver.rb', line 16 def url?(source) uri = URI.parse(source.to_s) uri.absolute? && !uri.scheme.to_s.empty? rescue URI::InvalidURIError false end |