From db80e6c650cf17c3c3d5712fa3e33213f0454f10 Mon Sep 17 00:00:00 2001 From: Thaddee Tyl Date: Sun, 19 Jan 2014 12:19:35 +0100 Subject: [PATCH] Coverage badge. --- README.md | 3 ++- coverage.svg | 1 + test.js | 23 +++++++++++++++++++++++ 3 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 coverage.svg diff --git a/README.md b/README.md index dff12ce..2348167 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ # GitHub badges in SVG format [![npm version](http://b.adge.me/npm/v/gh-badges.svg)](https://npmjs.org/package/gh-badges) +![coverage](https://rawgithub.com/badges/gh-badges/master/coverage.svg) -Make your own [badges][] (like this one above)! +Make your own badges [here][badges]! [badges]: diff --git a/coverage.svg b/coverage.svg new file mode 100644 index 0000000..0122874 --- /dev/null +++ b/coverage.svg @@ -0,0 +1 @@ +coveragecoverage38.3%38.3% \ No newline at end of file diff --git a/test.js b/test.js index a7e5ef2..923efe0 100644 --- a/test.js +++ b/test.js @@ -104,4 +104,27 @@ describe('the ass wrap-up', function() { done(); }); }); + it('should write the coverage image', function(done) { + ass.report('json', function(err, r) { + if (!!err) { return done(err); } + var badge = require('./badge.js'); + var score = +r.percent; + var badgeData = {text:['coverage', score + '%']}; + if (score < 70) { + badgeData.colorscheme = 'red'; + } else if (score < 80) { + badgeData.colorscheme = 'yellow'; + } else if (score < 90) { + badgeData.colorscheme = 'yellowgreen'; + } else if (score < 100) { + badgeData.colorscheme = 'green'; + } else { + badgeData.colorscheme = 'brightgreen'; + } + badge(badgeData, function writeBadge(svg) { + fs.writeFileSync('./coverage.svg', svg); + done(); + }); + }); + }); });