inline_svg 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of inline_svg might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +27 -0
- data/README.md +7 -2
- data/inline_svg.gemspec +2 -2
- data/lib/inline_svg/action_view/helpers.rb +14 -13
- data/lib/inline_svg/asset_file.rb +13 -0
- data/lib/inline_svg/finds_asset_paths.rb +11 -0
- data/lib/inline_svg/railtie.rb +3 -0
- data/lib/inline_svg/version.rb +1 -1
- data/lib/inline_svg.rb +32 -1
- data/spec/asset_file_spec.rb +27 -0
- data/spec/files/example.svg +1 -1
- data/spec/finds_asset_paths_spec.rb +16 -0
- data/spec/helpers/inline_svg_spec.rb +65 -44
- data/spec/inline_svg_spec.rb +32 -0
- metadata +19 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 76c4c056778276bacd69cc27ec4c982566f99f4b
|
4
|
+
data.tar.gz: e3678d7bf16c59dd3922d358265721e2fa05151a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a883fe5008e571a78008f94e8196ba84feb846bd25086bc127573c142a2e5232c90278e7002adbd0609dbf3be9dec25758743acd1f86e98280abec3a8df23f64
|
7
|
+
data.tar.gz: 3fa071d1f1e307cb3bffab9e7144dcf681aa32e5549fb950b350fe55a2eb4bc16438db2eebe508d3fd79b0b7022ade27bcb1b499a47498b9a42da389ff2be9ec
|
data/.gitignore
CHANGED
data/CHANGELOG.md
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# Change Log
|
2
|
+
All notable changes to this project will be documented in this file.
|
3
|
+
This project adheres to [Semantic Versioning](http://semver.org/).
|
4
|
+
|
5
|
+
## [Unreleased][unreleased]
|
6
|
+
Nothing.
|
7
|
+
|
8
|
+
## [0.3.0] - 2015-03-20
|
9
|
+
### Added
|
10
|
+
- Use Sprockets to find canonical asset paths (fingerprinted, post asset-pipeline).
|
11
|
+
|
12
|
+
## [0.2.0] - 2014-12-31
|
13
|
+
### Added
|
14
|
+
- Optionally remove comments from SVG files. Thanks, @jmarceli.
|
15
|
+
|
16
|
+
## [0.1.0] - 2014-12-15
|
17
|
+
### Added
|
18
|
+
- Optionally add a title and description to a document. Thanks, ludwig.schubert@qlearning.de.
|
19
|
+
- Add integration tests for main view helper. Thanks, ludwig.schubert@qlearning.de.
|
20
|
+
|
21
|
+
## 0.0.1 - 2014-11-24
|
22
|
+
### Added
|
23
|
+
- Basic Railtie and view helper to inline SVG documents to Rails views.
|
24
|
+
|
25
|
+
[unreleased]: https://github.com/jamesmartin/inline_svg/compare/v0.2.0...HEAD
|
26
|
+
[0.2.0]: https://github.com/jamesmartin/inline_svg/compare/v0.1.0...v0.2.0
|
27
|
+
[0.1.0]: https://github.com/jamesmartin/inline_svg/compare/v0.0.1...v0.1.0
|
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Inline
|
1
|
+
# Inline SVG
|
2
2
|
|
3
3
|
Styling a SVG document with CSS for use on the web is most reliably achieved by
|
4
4
|
[adding classes to the document and
|
@@ -8,6 +8,11 @@ This gem is a little helper method (`inline_svg`) that reads an SVG document fro
|
|
8
8
|
image directory, applies a CSS class attribute to the root of the document and
|
9
9
|
then embeds it into a view.
|
10
10
|
|
11
|
+
## Changelog
|
12
|
+
|
13
|
+
All notable changes to this project are documented in the
|
14
|
+
[CHANGELOG](https://github.com/jamesmartin/inline_svg/blob/master/CHANGELOG.md).
|
15
|
+
|
11
16
|
## Installation
|
12
17
|
|
13
18
|
Add this line to your application's Gemfile:
|
@@ -72,7 +77,7 @@ inline_svg("some-document.svg", class: 'some-class', title: 'Some Title', desc:
|
|
72
77
|
|
73
78
|
## Contributing
|
74
79
|
|
75
|
-
1. Fork it ( [http://github.com
|
80
|
+
1. Fork it ( [http://github.com/jamesmartin/inline_svg/fork](http://github.com/jamesmartin/inline_svg/fork) )
|
76
81
|
2. Create your feature branch (`git checkout -b my-new-feature`)
|
77
82
|
3. Commit your changes (`git commit -am 'Add some feature'`)
|
78
83
|
4. Push to the branch (`git push origin my-new-feature`)
|
data/inline_svg.gemspec
CHANGED
@@ -20,9 +20,9 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.5"
|
22
22
|
spec.add_development_dependency "rake"
|
23
|
-
spec.add_development_dependency "rspec", "~> 2
|
24
|
-
spec.add_development_dependency "activesupport"
|
23
|
+
spec.add_development_dependency "rspec", "~> 3.2"
|
25
24
|
|
25
|
+
spec.add_runtime_dependency "activesupport", "~> 4.1.9"
|
26
26
|
spec.add_runtime_dependency "nokogiri", "~> 1.6", '~> 1.6'
|
27
27
|
spec.add_runtime_dependency "loofah", ">= 2.0"
|
28
28
|
end
|
@@ -7,28 +7,29 @@ module InlineSvg
|
|
7
7
|
module ActionView
|
8
8
|
module Helpers
|
9
9
|
def inline_svg(filename, options={})
|
10
|
-
|
11
|
-
|
10
|
+
begin
|
11
|
+
doc = Loofah::HTML::DocumentFragment.parse(AssetFile.named(filename))
|
12
|
+
rescue InlineSvg::AssetFile::FileNotFound
|
13
|
+
return "<svg><!-- SVG file not found: '#{filename}' --></svg>".html_safe
|
14
|
+
end
|
12
15
|
|
13
|
-
# remove comments from svg file
|
14
16
|
if options[:nocomment].present?
|
15
|
-
doc
|
17
|
+
doc.scrub!(:strip)
|
16
18
|
end
|
17
19
|
|
18
20
|
svg = doc.at_css 'svg'
|
19
21
|
if options[:class]
|
20
22
|
svg['class'] = options[:class]
|
21
23
|
end
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
desc.content = options[:desc]
|
30
|
-
svg.add_child desc
|
24
|
+
|
25
|
+
%i(title desc).each do |child|
|
26
|
+
if options[child].present?
|
27
|
+
node = Nokogiri::XML::Node.new(child.to_s, doc)
|
28
|
+
node.content = options[child]
|
29
|
+
svg.add_child node
|
30
|
+
end
|
31
31
|
end
|
32
|
+
|
32
33
|
doc.to_html.html_safe
|
33
34
|
end
|
34
35
|
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module InlineSvg
|
2
|
+
class AssetFile
|
3
|
+
class FileNotFound < IOError; end
|
4
|
+
UNREADABLE_PATH = ''
|
5
|
+
|
6
|
+
def self.named(filename)
|
7
|
+
asset_path = FindsAssetPaths.by_filename(filename)
|
8
|
+
File.read(asset_path || UNREADABLE_PATH)
|
9
|
+
rescue Errno::ENOENT
|
10
|
+
raise FileNotFound.new("Asset not found: #{asset_path}")
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/inline_svg/railtie.rb
CHANGED
@@ -5,6 +5,9 @@ module InlineSvg
|
|
5
5
|
ActiveSupport.on_load :action_view do
|
6
6
|
require "inline_svg/action_view/helpers"
|
7
7
|
include InlineSvg::ActionView::Helpers
|
8
|
+
InlineSvg.configure do |config|
|
9
|
+
config.asset_finder = app.instance_variable_get(:@assets) # In most cases this will be the Sprockets::Environment instance of the Rails app.
|
10
|
+
end
|
8
11
|
end
|
9
12
|
end
|
10
13
|
end
|
data/lib/inline_svg/version.rb
CHANGED
data/lib/inline_svg.rb
CHANGED
@@ -1,7 +1,38 @@
|
|
1
1
|
require "inline_svg/version"
|
2
2
|
require "inline_svg/action_view/helpers"
|
3
|
+
require "inline_svg/finds_asset_paths"
|
4
|
+
require "inline_svg/asset_file"
|
3
5
|
require "inline_svg/railtie" if defined?(Rails)
|
6
|
+
require 'active_support/core_ext'
|
7
|
+
require 'nokogiri'
|
4
8
|
|
5
9
|
module InlineSvg
|
6
|
-
|
10
|
+
class Configuration
|
11
|
+
class Invalid < ArgumentError; end
|
12
|
+
|
13
|
+
attr_reader :asset_finder
|
14
|
+
|
15
|
+
def asset_finder=(finder)
|
16
|
+
if finder.respond_to?(:find_asset)
|
17
|
+
@asset_finder = finder
|
18
|
+
else
|
19
|
+
raise InlineSvg::Configuration::Invalid.new("Asset Finder should implement the #find_asset method")
|
20
|
+
end
|
21
|
+
asset_finder
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
@configuration = InlineSvg::Configuration.new
|
26
|
+
|
27
|
+
class << self
|
28
|
+
attr_reader :configuration
|
29
|
+
|
30
|
+
def configure
|
31
|
+
if block_given?
|
32
|
+
yield configuration
|
33
|
+
else
|
34
|
+
raise InlineSvg::Configuration::Invalid.new('Please set configuration options with a block')
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
7
38
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require_relative '../lib/inline_svg/finds_asset_paths'
|
2
|
+
require_relative '../lib/inline_svg/asset_file'
|
3
|
+
|
4
|
+
describe InlineSvg::AssetFile do
|
5
|
+
it "reads data from a file, after qualifying a full path" do
|
6
|
+
example_svg_path = File.expand_path(__FILE__, 'files/example.svg')
|
7
|
+
expect(InlineSvg::FindsAssetPaths).to receive(:by_filename).with('some filename').and_return example_svg_path
|
8
|
+
|
9
|
+
expect(InlineSvg::AssetFile.named('some filename')).to include('This is a test')
|
10
|
+
end
|
11
|
+
|
12
|
+
it "complains when the file cannot be read" do
|
13
|
+
allow(InlineSvg::FindsAssetPaths).to receive(:by_filename).and_return('/this/path/does/not/exist')
|
14
|
+
|
15
|
+
expect do
|
16
|
+
InlineSvg::AssetFile.named('some missing file')
|
17
|
+
end.to raise_error InlineSvg::AssetFile::FileNotFound
|
18
|
+
end
|
19
|
+
|
20
|
+
it "complains when the file path was not found" do
|
21
|
+
allow(InlineSvg::FindsAssetPaths).to receive(:by_filename).and_return(nil)
|
22
|
+
|
23
|
+
expect do
|
24
|
+
InlineSvg::AssetFile.named('some missing file')
|
25
|
+
end.to raise_error InlineSvg::AssetFile::FileNotFound
|
26
|
+
end
|
27
|
+
end
|
data/spec/files/example.svg
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
require_relative '../lib/inline_svg'
|
2
|
+
|
3
|
+
describe InlineSvg::FindsAssetPaths do
|
4
|
+
it "returns fully qualified file paths from Sprockets" do
|
5
|
+
sprockets = double('SprocketsDouble')
|
6
|
+
|
7
|
+
expect(sprockets).to receive(:find_asset).with('some-file').
|
8
|
+
and_return('/full/path/to/some-file')
|
9
|
+
|
10
|
+
InlineSvg.configure do |config|
|
11
|
+
config.asset_finder = sprockets
|
12
|
+
end
|
13
|
+
|
14
|
+
expect(InlineSvg::FindsAssetPaths.by_filename('some-file')).to eq '/full/path/to/some-file'
|
15
|
+
end
|
16
|
+
end
|
@@ -1,62 +1,83 @@
|
|
1
1
|
require 'inline_svg'
|
2
|
-
require 'nokogiri'
|
3
|
-
require 'active_support/core_ext'
|
4
2
|
|
5
3
|
describe InlineSvg::ActionView::Helpers do
|
6
4
|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
5
|
+
let(:helper) { ( Class.new { include InlineSvg::ActionView::Helpers } ).new }
|
6
|
+
|
7
|
+
describe "#inline_svg" do
|
8
|
+
|
9
|
+
context "when passed the name of an SVG that does not exist" do
|
10
|
+
it "returns an empty, html safe, SVG document as a placeholder" do
|
11
|
+
allow(InlineSvg::AssetFile).to receive(:named).with('some-missing-file').and_raise(InlineSvg::AssetFile::FileNotFound.new)
|
12
|
+
output = helper.inline_svg('some-missing-file')
|
13
|
+
expect(output).to eq "<svg><!-- SVG file not found: 'some-missing-file' --></svg>"
|
14
|
+
expect(output).to be_html_safe
|
12
15
|
end
|
13
16
|
end
|
14
|
-
# Allow mock Rails to give a path to our SVG
|
15
|
-
path_mocker = double("path_mocker")
|
16
|
-
allow(path_mocker).to receive(:join) { 'spec/files/example.svg' }
|
17
|
-
allow(Rails).to receive(:root) { path_mocker }
|
18
|
-
end
|
19
17
|
|
20
|
-
|
18
|
+
context "when passed an existing SVG file" do
|
21
19
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
20
|
+
context "and no options" do
|
21
|
+
it "returns a html safe version of the file's contents" do
|
22
|
+
example_file = <<-SVG.sub(/\n$/, '')
|
23
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"><!-- This is a comment --></svg>
|
24
|
+
SVG
|
25
|
+
allow(InlineSvg::AssetFile).to receive(:named).with('some-file').and_return(example_file)
|
26
|
+
expect(helper.inline_svg('some-file')).to eq example_file
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context "and the 'title' option" do
|
31
|
+
it "adds the title node to the SVG output" do
|
32
|
+
input_svg = <<-SVG.sub(/\n$/, '')
|
33
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"></svg>
|
34
|
+
SVG
|
35
|
+
expected_output = <<-SVG.sub(/\n$/, '')
|
36
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"><title>A title</title></svg>
|
30
37
|
SVG
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
context 'and title and description options' do
|
36
|
-
|
37
|
-
subject { mock_helper.inline_svg( 'mocked_path', title: 'A title', desc: 'A desc' ).strip }
|
38
|
-
let(:example_svg) {
|
39
|
-
<<-SVG.sub(/\n$/, '')
|
40
|
-
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"><!-- This is a comment --><title>A title</title>
|
41
|
-
<desc>A desc</desc></svg>
|
42
|
-
SVG
|
43
|
-
}
|
44
|
-
|
45
|
-
it { is_expected.to eql example_svg }
|
46
|
-
|
38
|
+
allow(InlineSvg::AssetFile).to receive(:named).with('some-file').and_return(input_svg)
|
39
|
+
expect(helper.inline_svg('some-file', title: 'A title')).to eq expected_output
|
40
|
+
end
|
47
41
|
end
|
48
42
|
|
49
|
-
context
|
43
|
+
context "and the 'desc' option" do
|
44
|
+
it "adds the description node to the SVG output" do
|
45
|
+
input_svg = <<-SVG.sub(/\n$/, '')
|
46
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"></svg>
|
47
|
+
SVG
|
48
|
+
expected_output = <<-SVG.sub(/\n$/, '')
|
49
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"><desc>A description</desc></svg>
|
50
|
+
SVG
|
51
|
+
allow(InlineSvg::AssetFile).to receive(:named).with('some-file').and_return(input_svg)
|
52
|
+
expect(helper.inline_svg('some-file', desc: 'A description')).to eq expected_output
|
53
|
+
end
|
54
|
+
end
|
50
55
|
|
51
|
-
|
52
|
-
|
53
|
-
<<-SVG.sub(/\n$/, '')
|
56
|
+
context "and the 'nocomment' option" do
|
57
|
+
it "strips comments and other unknown/unsafe nodes from the output" do
|
58
|
+
input_svg = <<-SVG.sub(/\n$/, '')
|
59
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"><!-- This is a comment --></svg>
|
60
|
+
SVG
|
61
|
+
expected_output = <<-SVG.sub(/\n$/, '')
|
54
62
|
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"></svg>
|
55
63
|
SVG
|
56
|
-
|
57
|
-
|
58
|
-
|
64
|
+
allow(InlineSvg::AssetFile).to receive(:named).with('some-file').and_return(input_svg)
|
65
|
+
expect(helper.inline_svg('some-file', nocomment: true)).to eq expected_output
|
66
|
+
end
|
67
|
+
end
|
59
68
|
|
69
|
+
context "and all options" do
|
70
|
+
it "applies all expected transformations to the output" do
|
71
|
+
input_svg = <<-SVG.sub(/\n$/, '')
|
72
|
+
<svg xmlns="http://www.w3.org/2000/svg" role="presentation" xml:lang="en"><!-- This is a comment --></svg>
|
73
|
+
SVG
|
74
|
+
expected_output = <<-SVG.sub(/\n$/, '')
|
75
|
+
<svg xmlns="http://www.w3.org/2000/svg" xml:lang="en"><title>A title</title>
|
76
|
+
<desc>A description</desc></svg>
|
77
|
+
SVG
|
78
|
+
allow(InlineSvg::AssetFile).to receive(:named).with('some-file').and_return(input_svg)
|
79
|
+
expect(helper.inline_svg('some-file', title: 'A title', desc: 'A description', nocomment: true)).to eq expected_output
|
80
|
+
end
|
60
81
|
end
|
61
82
|
end
|
62
83
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require_relative '../lib/inline_svg'
|
2
|
+
|
3
|
+
describe InlineSvg do
|
4
|
+
describe "configuration" do
|
5
|
+
context "when a block is not given" do
|
6
|
+
it "complains" do
|
7
|
+
expect do
|
8
|
+
InlineSvg.configure
|
9
|
+
end.to raise_error(InlineSvg::Configuration::Invalid)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
context "asset finder" do
|
14
|
+
it "allows an asset finder to be assigned" do
|
15
|
+
sprockets = double('SomethingLikeSprockets', find_asset: 'some asset')
|
16
|
+
InlineSvg.configure do |config|
|
17
|
+
config.asset_finder = sprockets
|
18
|
+
end
|
19
|
+
|
20
|
+
expect(InlineSvg.configuration.asset_finder).to eq sprockets
|
21
|
+
end
|
22
|
+
|
23
|
+
it "complains when the provided asset finder does not implement #find_asset" do
|
24
|
+
expect do
|
25
|
+
InlineSvg.configure do |config|
|
26
|
+
config.asset_finder = 'Not a real asset finder'
|
27
|
+
end
|
28
|
+
end.to raise_error(InlineSvg::Configuration::Invalid, /asset finder.*find_asset/i)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: inline_svg
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Martin
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-03-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -44,28 +44,28 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '2
|
47
|
+
version: '3.2'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '2
|
54
|
+
version: '3.2'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: activesupport
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
62
|
-
type: :
|
61
|
+
version: 4.1.9
|
62
|
+
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 4.1.9
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: nokogiri
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -102,6 +102,7 @@ extensions: []
|
|
102
102
|
extra_rdoc_files: []
|
103
103
|
files:
|
104
104
|
- ".gitignore"
|
105
|
+
- CHANGELOG.md
|
105
106
|
- Gemfile
|
106
107
|
- LICENSE.txt
|
107
108
|
- README.md
|
@@ -109,10 +110,15 @@ files:
|
|
109
110
|
- inline_svg.gemspec
|
110
111
|
- lib/inline_svg.rb
|
111
112
|
- lib/inline_svg/action_view/helpers.rb
|
113
|
+
- lib/inline_svg/asset_file.rb
|
114
|
+
- lib/inline_svg/finds_asset_paths.rb
|
112
115
|
- lib/inline_svg/railtie.rb
|
113
116
|
- lib/inline_svg/version.rb
|
117
|
+
- spec/asset_file_spec.rb
|
114
118
|
- spec/files/example.svg
|
119
|
+
- spec/finds_asset_paths_spec.rb
|
115
120
|
- spec/helpers/inline_svg_spec.rb
|
121
|
+
- spec/inline_svg_spec.rb
|
116
122
|
homepage: ''
|
117
123
|
licenses:
|
118
124
|
- MIT
|
@@ -133,10 +139,13 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
133
139
|
version: '0'
|
134
140
|
requirements: []
|
135
141
|
rubyforge_project:
|
136
|
-
rubygems_version: 2.
|
142
|
+
rubygems_version: 2.4.3
|
137
143
|
signing_key:
|
138
144
|
specification_version: 4
|
139
145
|
summary: Embeds an SVG document, inline.
|
140
146
|
test_files:
|
147
|
+
- spec/asset_file_spec.rb
|
141
148
|
- spec/files/example.svg
|
149
|
+
- spec/finds_asset_paths_spec.rb
|
142
150
|
- spec/helpers/inline_svg_spec.rb
|
151
|
+
- spec/inline_svg_spec.rb
|