From 327d0a982cd26071703b729f7f7926a5d3357560 Mon Sep 17 00:00:00 2001 From: Miguel Savignano Date: Wed, 6 Jun 2018 23:13:46 +0200 Subject: [PATCH 1/3] use executable for generate shield svg --- README.md | 8 +++++++- bin/simplecov-shield | 8 ++++++++ simplecov-shield.gemspec | 1 + 3 files changed, 16 insertions(+), 1 deletion(-) create mode 100755 bin/simplecov-shield mode change 100644 => 100755 simplecov-shield.gemspec diff --git a/README.md b/README.md index 0142e83..ac37d84 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ [![Dependency Status](https://gemnasium.com/aterris/simplecov-shield.svg)](https://gemnasium.com/aterris/simplecov-shield) [![License](http://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) - + [SimpleCov](https://github.com/colszowka/simplecov) Formatter to generate coverage badge via [Shields.io](http://shields.io/) ## Install @@ -31,6 +31,12 @@ require 'simplecov-shield' SimpleCov.formatter = SimpleCov::Formatter::ShieldFormatter ``` +Or use the executable + +``` +simplecov-shield 90 +``` + Badge will be generated at `coverage/coverage.svg` ## Examples diff --git a/bin/simplecov-shield b/bin/simplecov-shield new file mode 100755 index 0000000..d05461d --- /dev/null +++ b/bin/simplecov-shield @@ -0,0 +1,8 @@ +#!/usr/bin/env ruby +require 'simplecov-shield' + +unless ARGV[0] + puts "required covered percent" +else + SimpleCov::Formatter::ShieldFormatter.new.format OpenStruct.new(covered_percent: ARGV[0].to_i) +end diff --git a/simplecov-shield.gemspec b/simplecov-shield.gemspec old mode 100644 new mode 100755 index 212ff0c..33e7f96 --- a/simplecov-shield.gemspec +++ b/simplecov-shield.gemspec @@ -10,6 +10,7 @@ Gem::Specification.new do |spec| spec.homepage = 'https://github.com/aterris/simplecov-shield' spec.license = 'MIT' + spec.executables << 'simplecov-shield' spec.files = ['lib/simplecov-shield.rb'] spec.test_files = spec.files.grep(%r{^(spec)/}) spec.require_path = 'lib' From fdc758feaf8c8c912a8768b6c7a2dc8e31d92eb9 Mon Sep 17 00:00:00 2001 From: Miguel Savignano Date: Wed, 6 Jun 2018 23:21:03 +0200 Subject: [PATCH 2/3] execute with ruby code --- README.md | 4 ++++ bin/simplecov-shield | 2 +- lib/simplecov-shield.rb | 7 ++++++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ac37d84..8bfcc12 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,10 @@ Or use the executable simplecov-shield 90 ``` +```ruby +SimpleCov::Formatter::ShieldFormatter.new.run(90) +``` + Badge will be generated at `coverage/coverage.svg` ## Examples diff --git a/bin/simplecov-shield b/bin/simplecov-shield index d05461d..d9e852b 100755 --- a/bin/simplecov-shield +++ b/bin/simplecov-shield @@ -4,5 +4,5 @@ require 'simplecov-shield' unless ARGV[0] puts "required covered percent" else - SimpleCov::Formatter::ShieldFormatter.new.format OpenStruct.new(covered_percent: ARGV[0].to_i) + SimpleCov::Formatter::ShieldFormatter.run(ARGV[0].to_i) end diff --git a/lib/simplecov-shield.rb b/lib/simplecov-shield.rb index 04037e4..4f6ff70 100644 --- a/lib/simplecov-shield.rb +++ b/lib/simplecov-shield.rb @@ -18,6 +18,11 @@ def format(result) generate_shield end + def run(covered_percent) + @result = OpenStruct.new({covered_percent: covered_percent}) + generate_shield + end + def generate_shield File.open(shield_file_path, 'w') do |file| file.write HTTParty.get(shield_url).parsed_response @@ -58,4 +63,4 @@ def color @config.each do |key, val| define_method(key) { self.class.config[key] } end -end \ No newline at end of file +end From 0f7f5340e2c721a983b21dd74e823793e7936020 Mon Sep 17 00:00:00 2001 From: Miguel Savignano Date: Wed, 6 Jun 2018 23:45:25 +0200 Subject: [PATCH 3/3] fix test, img.shields.io/badge change the svg response --- spec/assets/coverage.svg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/assets/coverage.svg b/spec/assets/coverage.svg index 1311637..0bf813a 100644 --- a/spec/assets/coverage.svg +++ b/spec/assets/coverage.svg @@ -1 +1 @@ -coveragecoverage97%97% \ No newline at end of file +coveragecoverage97%97% \ No newline at end of file