simplecov-badge 1.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f48429e4d889d1ff70ee5f5005886a7b72bd8d26
4
+ data.tar.gz: dbc14c945f52b4c70229fa27e7be7c59f0481891
5
+ SHA512:
6
+ metadata.gz: 1de96fe3b56ae991834842362ba979a13e1a43f2cbf5ce24981a1ecbf7539f4d128155f9e36b4c60f13ebd25e84a9150635c72dc0c5ae46cc7ce45ca28d7f221
7
+ data.tar.gz: 222bb81ce5c55af0a213a4e815f4c206f83c6f05c493e3134d028f37f99fad4cb7217c7a0e599eb1b6ecf4da0d03c1b72d59aff0976ba333d037a8b523118ed8
data/.document ADDED
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
data/.gitignore ADDED
@@ -0,0 +1,26 @@
1
+ .rvmrc
2
+ .bundle
3
+ Gemfile.lock
4
+
5
+ ## MAC OS
6
+ .DS_Store
7
+
8
+ ## TEXTMATE
9
+ *.tmproj
10
+ tmtags
11
+
12
+ ## EMACS
13
+ *~
14
+ \#*
15
+ .\#*
16
+
17
+ ## VIM
18
+ *.swp
19
+
20
+ ## PROJECT::GENERAL
21
+ coverage
22
+ rdoc
23
+ pkg
24
+ .sass-cache
25
+
26
+ ## PROJECT::SPECIFIC
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format documentation
data/Gemfile ADDED
@@ -0,0 +1,14 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development do
6
+ # Use local copy of simplecov in development when checked out, fetch from git otherwise
7
+ if File.directory?(File.dirname(__FILE__) + '/../simplecov')
8
+ gem 'simplecov', :path => File.dirname(__FILE__) + '/../simplecov'
9
+ else
10
+ gem 'simplecov', :git => 'https://github.com/colszowka/simplecov'
11
+ end
12
+
13
+ gem 'rspec'
14
+ end
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2013 Matt Hale
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,20 @@
1
+ # Badge formatter for SimpleCov
2
+ ====================================
3
+ [ ![Codeship Status for matthew342/simplecov-badge](https://www.codeship.io/projects/c46ee0e0-9da1-0130-7a9e-0e0ae47480c0/status?branch=master)](https://www.codeship.io/projects/3367)
4
+ [ ![Code Coverage for matthew342/simplecov-badge](http://http://matthew342.github.io/simplecov-badge/coverage/coverage-badge.png)](http://matthew342.github.io/simplecov-badge/coverage/index.html)
5
+ ***Note: To learn more about SimpleCov, check out the main repo at https://github.com/colszowka/simplecov***
6
+
7
+ Generates coverage badges from SimpleCov using ImageMagick.
8
+
9
+
10
+ Note on Patches/Pull Requests
11
+ -----------------------------
12
+
13
+ \[to come\]
14
+
15
+
16
+ Copyright
17
+ ---------
18
+ Adapted from [simplecov-html](https://github.com/colszowka/simplecov-html).
19
+ Thanks to [Christoph Olszowka](https://github.com/colszowka).
20
+ Copyright (c) 2013 Matt Hale. See LICENSE for details.
data/Rakefile ADDED
@@ -0,0 +1,16 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
3
+
4
+ # See https://github.com/colszowka/simplecov/issues/171
5
+ desc "Set permissions on all files so they are compatible with both user-local and system-wide installs"
6
+ task :fix_permissions do
7
+ system 'bash -c "find . -type f -exec chmod 644 {} \; && find . -type d -exec chmod 755 {} \;"'
8
+ end
9
+ # Enforce proper permissions on each build
10
+ Rake::Task[:build].prerequisites.unshift :fix_permissions
11
+
12
+ require 'rspec/core/rake_task'
13
+ RSpec::Core::RakeTask.new('spec')
14
+
15
+ # If you want to make this the default task
16
+ task :default => :spec
@@ -0,0 +1,210 @@
1
+ # Ensure we are using a compatible version of SimpleCov
2
+ if Gem::Version.new(SimpleCov::VERSION) < Gem::Version.new("0.7.1")
3
+ raise RuntimeError, "The version of SimpleCov you are using is too old. Please update with `gem install simplecov` or `bundle update simplecov`"
4
+ end
5
+
6
+ ImageMagickError = Class.new(StandardError)
7
+
8
+ class SimpleCov::Formatter::BadgeFormatter
9
+ # Set up config variables.
10
+ options = {:generate_groups => true, :timestamp => false, :green => '#4fb151',
11
+ :yellow => '#ded443', :red => '#a23e3f', :number_font => 'Helvetica-Narrow-Bold',
12
+ :number_font_size => 20, :name_font => 'Helvetica', :name_font_size => 17,
13
+ :badge_height => 25, :use_strength_color => true, :strength_foreground => false,
14
+ :group_number_font => 'Helvetica-Narrow-Bold', :group_number_font_size => 20,
15
+ :group_name_font => 'Helvetica-Bold', :group_name_font_size => 17,
16
+ :group_badge_height => 25, :use_strength_color_for_group_name => true,
17
+ :group_strength_foreground => true}
18
+
19
+ # set up class variables and getters/setters
20
+ options.each do |opt,v|
21
+ set = "@@#{opt} = v"
22
+ getter = "def self.#{opt}; @@#{opt}; end;"
23
+ setter = "def self.#{opt}=(value); @@#{opt} = value; end;"
24
+ eval(set)
25
+ eval(getter)
26
+ eval(setter)
27
+ end
28
+
29
+ def format(result)
30
+ begin
31
+ check_imagemagick
32
+ generate_header_badge(result)
33
+ generate_group_badges(result) if @@generate_groups
34
+ puts output_message(result)
35
+ rescue ImageMagickError => e
36
+ puts e
37
+ puts "Simplecov-Badge was unable to generate a badge for #{result.command_name}."
38
+ end
39
+ end
40
+
41
+ private
42
+
43
+ def generate_header_badge(result)
44
+ overall_cov = result.source_files.covered_percent.round(0)
45
+ overall_strength = result.covered_strength.round(0)
46
+ command = []
47
+ command[0] = """
48
+ convert -size 52x#{@@badge_height} xc:'#{coverage_color(overall_cov)}' -pointsize #{@@number_font_size} -font '#{@@number_font}' \
49
+ -gravity east -fill white -draw \"kerning 2 text +2,+2 '#{overall_cov}%'\" \
50
+ -alpha set -bordercolor none -border 3 \
51
+ -gravity North -chop 0x3 \
52
+ -gravity South -chop 0x3 \
53
+ -gravity West -chop 3x0 \
54
+ #{output_path}/tmp.png
55
+ """
56
+ command[1] = """
57
+ convert #{output_path}/tmp.png \\( -size 237x#{@@badge_height} xc:'#{strength_background(overall_strength, @@strength_foreground)}' \
58
+ -pointsize #{@@name_font_size} -fill '#{strength_foreground(overall_strength, @@strength_foreground)}' -font '#{@@name_font}' \
59
+ -draw \"kerning 1 text 4,19 'OVERALL STRENGTH'\" \
60
+ -gravity West \
61
+ -background white -splice 1x0 -background black -splice 1x0 \
62
+ -trim +repage -gravity West -chop 1x0 -gravity East \
63
+ -background '#{strength_background(overall_strength, @@strength_foreground)}' -splice 2x0 \\) \
64
+ -background none +append #{output_path}/tmp.png
65
+ """
66
+ command[2] = """
67
+ convert #{output_path}/tmp.png -format 'roundrectangle 1,1 %[fx:w+4],%[fx:h+#{@@badge_height}] 10,10' \
68
+ -write info:#{output_path}/tmp.mvg \
69
+ -alpha set -bordercolor none -border 3 \
70
+ \\( +clone -alpha transparent -background none \
71
+ -fill white -stroke none -strokewidth 0 -draw @#{output_path}/tmp.mvg \\) \
72
+ -compose DstIn -composite \
73
+ -gravity South -chop 0x3 #{output_path}/tmp.png
74
+ """
75
+ command[3] = """
76
+ convert #{output_path}/tmp.png \\( +clone -alpha extract \
77
+ \\( -size 5x2 xc:black -draw 'fill white circle 8,8 8,0' -write mpr:arc +delete \\) \
78
+ \\( mpr:arc -rotate 180 \\) -gravity southeast -composite \\) \
79
+ -alpha off -compose CopyOpacity -composite #{output_path}/coverage-badge.png
80
+ """
81
+ begin
82
+ command.each do |cmd|
83
+ output = `#{cmd}`
84
+ check_status(output)
85
+ end
86
+ ensure
87
+ system("rm #{output_path}/tmp.mvg")
88
+ system("rm #{output_path}/tmp.png")
89
+ end
90
+ end
91
+
92
+ def generate_group_badges(result)
93
+ result.groups.each do |name, files|
94
+ cov = files.covered_percent.round(0)
95
+ strength = files.covered_strength.round(0)
96
+ command = []
97
+ command[0] = """
98
+ convert -size 52x#{@@group_badge_height} xc:'#{coverage_color(cov)}' -pointsize #{@@group_number_font_size} -font '#{@@group_number_font}' \
99
+ -gravity east -fill white -draw \"kerning 2 text +2,+2 '#{cov}%'\" \
100
+ -alpha set -bordercolor none -border 3 \
101
+ -gravity North -chop 0x3 \
102
+ -gravity South -chop 0x3 \
103
+ -gravity East -chop 3x0 #{output_path}/tmp.png
104
+ """
105
+ command[1] = """
106
+ convert #{output_path}/tmp.png \\( -size 300x#{@@group_badge_height} xc:#{strength_background(strength, @@group_strength_foreground)} \
107
+ -pointsize #{@@group_name_font_size} -fill '#{strength_foreground(strength, @@group_strength_foreground)}' -font '#{@@group_name_font}' \
108
+ -draw \"kerning 0.5 text 4,19 '#{name.upcase}'\" \
109
+ -gravity West -background white -splice 1x0 -background black -splice 1x0 \
110
+ -trim +repage -gravity West -chop 1x0 -gravity East \
111
+ -background '#{strength_background(strength, @@group_strength_foreground)}' -splice 2x0 \
112
+ -alpha set -bordercolor none -border 3 \
113
+ -gravity North -chop 0x3 -gravity South -chop 0x3 \
114
+ -strokewidth 2 -format 'stroke white line 1,1 %[fx:w],3' \\) \
115
+ -background none +append #{output_path}/tmp.png
116
+ """
117
+ command[2] = """
118
+ convert #{output_path}/tmp.png \\( +clone -alpha extract \
119
+ \\( -size 5x2 xc:black -draw 'fill white circle 8,8 8,0' -write mpr:arc +delete \\) \
120
+ \\( mpr:arc -flip \\) -gravity southwest -composite \
121
+ \\( mpr:arc -rotate 180 \\) -gravity southeast -composite \\) \
122
+ -alpha off -compose CopyOpacity -composite \
123
+ #{output_path}/tmp.png
124
+ """
125
+ command[3] = """
126
+ convert #{output_path}/coverage-badge.png #{output_path}/tmp.png -gravity West -background none -append #{output_path}/coverage-badge.png
127
+ """
128
+ begin
129
+ command.each_with_index do |cmd, y|
130
+ next cmd if y == 2 #and i != result.groups.count
131
+ output = `#{cmd}`
132
+ check_status(output)
133
+ end
134
+ ensure
135
+ system("rm #{output_path}/tmp.png")
136
+ end
137
+ end
138
+ if @@timestamp
139
+ timestamp_cmd = """
140
+ convert #{output_path}/coverage-badge.png -alpha set -bordercolor none -border 3 \
141
+ -gravity North -chop 0x3 \
142
+ -gravity East -chop 3x0 \
143
+ -gravity West -chop 3x0 \\( -background none -font 'Helvetica' label:'Generated #{Time.current.strftime('%m-%d-%y %H:%M UTC')}' \\) -background none -gravity center -append #{output_path}/coverage-badge.png
144
+ """
145
+ output = `#{timestamp_cmd}`
146
+ check_status(output)
147
+ end
148
+ end
149
+
150
+ # checks if imagemagick is installed and working
151
+ def check_imagemagick
152
+ output = `convert`
153
+ raise ImageMagickError, "ImageMagick doesn't appear to be installed." unless $?.to_i == 0
154
+ end
155
+
156
+ def check_status(output)
157
+ raise ImageMagickError, "ImageMagick exited with an error. It said:\n #{output}" unless $?.to_i == 0
158
+ end
159
+
160
+ def output_message(result)
161
+ "Coverage badge generated for #{result.command_name} to #{output_path}."
162
+ end
163
+
164
+ def output_path
165
+ SimpleCov.coverage_path
166
+ end
167
+
168
+ def strength_background(strength, foreground)
169
+ if foreground
170
+ 'transparent'
171
+ else
172
+ strength_color(strength, @@use_strength_color)
173
+ end
174
+ end
175
+
176
+ def strength_foreground(strength, foreground)
177
+ unless foreground
178
+ 'white'
179
+ else
180
+ strength_color(strength, @@use_strength_color)
181
+ end
182
+ end
183
+
184
+ def coverage_color(covered_percent)
185
+ if covered_percent > 90
186
+ @@green
187
+ elsif covered_percent > 80
188
+ @@yellow
189
+ else
190
+ @@red
191
+ end
192
+ end
193
+
194
+ def strength_color(covered_strength, use)
195
+ if use
196
+ if covered_strength > 1
197
+ @@green
198
+ elsif covered_strength == 1
199
+ @@yellow
200
+ else
201
+ @@red
202
+ end
203
+ else
204
+ 'silver'
205
+ end
206
+ end
207
+ end
208
+
209
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__)))
210
+ require 'simplecov-badge/version'
@@ -0,0 +1,7 @@
1
+ module SimpleCov
2
+ module Formatter
3
+ class BadgeFormatter
4
+ VERSION = "1.0.0"
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,25 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require 'simplecov-badge/version'
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "simplecov-badge"
7
+ s.version = SimpleCov::Formatter::BadgeFormatter::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Matt Hale"]
10
+ s.email = ["matt.hale.0 at gmail dot com"]
11
+ s.homepage = "https://github.com/matthew342/simplecov-badge"
12
+ s.summary = %Q{Badge generator for SimpleCov code coverage tool for ruby 1.9+}
13
+ s.description = %Q{Badge generator for SimpleCov code coverage tool for ruby 1.9+}
14
+
15
+ s.rubyforge_project = "simplecov-badge"
16
+
17
+ s.add_development_dependency 'rake'
18
+ s.add_development_dependency 'sprockets'
19
+ s.add_development_dependency 'sass'
20
+
21
+ s.files = `git ls-files`.split("\n")
22
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
23
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
24
+ s.require_paths = ["lib"]
25
+ end
@@ -0,0 +1,111 @@
1
+ require 'spec_helper'
2
+
3
+ describe SimpleCov::Formatter::BadgeFormatter do
4
+ before(:all) do
5
+ @obj = SimpleCov::Formatter::BadgeFormatter.new
6
+ end
7
+
8
+ describe 'format' do
9
+ it "handles a StandardError" do
10
+ result = double("result")
11
+ result.stub(:command_name) {'test'}
12
+ @obj.stub(:check_imagemagick).and_raise(ImageMagickError, "test phrase")
13
+ @obj.should_not_receive(:generate_header_badge)
14
+ @obj.should_not_receive(:generate_group_badges)
15
+ $stdout.should_receive(:write).at_least(:once)
16
+ @obj.format(result)
17
+ end
18
+ end
19
+
20
+ describe "options" do
21
+ it 'generates option getter/setters' do
22
+ SimpleCov::Formatter::BadgeFormatter.generate_groups.should eq(true)
23
+ SimpleCov::Formatter::BadgeFormatter.generate_groups = false
24
+ SimpleCov::Formatter::BadgeFormatter.generate_groups.should eq(false)
25
+ end
26
+ end
27
+
28
+ describe "badge generation" do
29
+ it 'should generate header badge' do
30
+ @obj.stub(:check_imagemagick).and_return(0)
31
+ @obj.stub(:generate_group_badges).and_return(0)
32
+ @obj.stub(:coverage_color).and_return('green')
33
+ @obj.stub(:strength_color).and_return('green')
34
+ @obj.stub(:strength_foreground).and_return('green')
35
+ @obj.stub(:strength_background).and_return('transparent')
36
+ @obj.stub(:output_path).and_return('.')
37
+ result = double('Result')
38
+ result.stub_chain('source_files.covered_percent').and_return(50)
39
+ result.stub('covered_strength').and_return(90)
40
+ result.stub(:command_name) {'test'}
41
+ @obj.format(result)
42
+ $?.success?.should eq(true)
43
+ File.size('coverage-badge.png')
44
+ end
45
+
46
+ it 'should generate group badges' do
47
+ SimpleCov::Formatter::BadgeFormatter.generate_groups = true
48
+ result = double('Result')
49
+ result.stub(:command_name) {'test'}
50
+ files = double("files")
51
+ files.stub('covered_percent').and_return(50)
52
+ files.stub('covered_strength').and_return(90)
53
+ groups = {'group1' => files, 'group2' => files}
54
+ result.stub_chain('groups').and_return(groups)
55
+ @obj.stub(:check_imagemagick).and_return(0)
56
+ @obj.stub(:generate_header_badge).and_return(0)
57
+ @obj.stub(:coverage_color).and_return('green')
58
+ @obj.stub(:strength_color).and_return('green')
59
+ @obj.stub(:strength_foreground).and_return('green')
60
+ @obj.stub(:strength_background).and_return('transparent')
61
+ @obj.stub(:output_path).and_return('.')
62
+ expect{ @obj.format(result) }.to change{File.size('coverage-badge.png')}
63
+ $?.success?.should eq(true)
64
+ end
65
+
66
+ describe 'generation helpers' do
67
+ # Calling all these private methods here is a little ugly; but it seemed like the
68
+ # right thing in this case - testing these through public methods (format) just
69
+ # isn't possible
70
+
71
+ describe 'strength_background' do
72
+ it 'returns transparent if foreground and strength_color if not' do
73
+ @obj.instance_eval{strength_background(60, true)}.should eq('transparent')
74
+ @obj.class.any_instance.should_receive(:strength_color)
75
+ @obj.instance_eval{strength_background(60, false)}
76
+ end
77
+ end
78
+
79
+ describe 'strength_foreground' do
80
+ it 'returns strength color if foreground and white if not' do
81
+ @obj.instance_eval{strength_foreground(60,false)}.should eq('white')
82
+ @obj.class.any_instance.should_receive(:strength_color)
83
+ @obj.instance_eval{strength_foreground(60,true)}
84
+ end
85
+ end
86
+
87
+ describe 'coverage_color' do
88
+ it 'returns the correct colors' do
89
+ @obj.instance_eval{coverage_color(91)}.should eq(@obj.class.green)
90
+ @obj.instance_eval{coverage_color(81)}.should eq(@obj.class.yellow)
91
+ @obj.instance_eval{coverage_color(60)}.should eq(@obj.class.red)
92
+ end
93
+ end
94
+
95
+ describe 'strength_color' do
96
+ it 'returns the correct colors' do
97
+ @obj.instance_eval{strength_color(1.1, true)}.should eq(@obj.class.green)
98
+ @obj.instance_eval{strength_color(1, true)}.should eq(@obj.class.yellow)
99
+ @obj.instance_eval{strength_color(0.9, true)}.should eq(@obj.class.red)
100
+ @obj.instance_eval{strength_color(0.9, false)}.should eq('silver')
101
+ end
102
+ end
103
+ end
104
+
105
+ after(:all) do
106
+ `rm coverage-badge.png`
107
+ end
108
+ end
109
+
110
+
111
+ end
@@ -0,0 +1,15 @@
1
+ require 'rubygems'
2
+ require 'bundler/setup'
3
+ require 'simplecov'
4
+ SimpleCov.start do
5
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
6
+ SimpleCov::Formatter::HTMLFormatter,
7
+ SimpleCov::Formatter::BadgeFormatter,
8
+ ]
9
+ end
10
+ require 'simplecov-badge'
11
+
12
+ RSpec.configure do |config|
13
+ # some (optional) config here
14
+
15
+ end
metadata ADDED
@@ -0,0 +1,99 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: simplecov-badge
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Matt Hale
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-05-16 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: sprockets
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: sass
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: Badge generator for SimpleCov code coverage tool for ruby 1.9+
56
+ email:
57
+ - matt.hale.0 at gmail dot com
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - .document
63
+ - .gitignore
64
+ - .rspec
65
+ - Gemfile
66
+ - LICENSE
67
+ - README.md
68
+ - Rakefile
69
+ - lib/simplecov-badge.rb
70
+ - lib/simplecov-badge/version.rb
71
+ - simplecov-badge.gemspec
72
+ - spec/simplecov-badge_spec.rb
73
+ - spec/spec_helper.rb
74
+ homepage: https://github.com/matthew342/simplecov-badge
75
+ licenses: []
76
+ metadata: {}
77
+ post_install_message:
78
+ rdoc_options: []
79
+ require_paths:
80
+ - lib
81
+ required_ruby_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ required_rubygems_version: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ requirements: []
92
+ rubyforge_project: simplecov-badge
93
+ rubygems_version: 2.0.3
94
+ signing_key:
95
+ specification_version: 4
96
+ summary: Badge generator for SimpleCov code coverage tool for ruby 1.9+
97
+ test_files:
98
+ - spec/simplecov-badge_spec.rb
99
+ - spec/spec_helper.rb