diff options
Diffstat (limited to 'test/test-functional.js')
-rw-r--r-- | test/test-functional.js | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/test/test-functional.js b/test/test-functional.js index e91f281..d716e07 100644 --- a/test/test-functional.js +++ b/test/test-functional.js @@ -2,6 +2,8 @@ var _ = require('lodash'); var assert = require("assert"); var exec = require('child_process').exec; +var totalHoursCount; + describe('git-hours', function() { describe('cli', function() { @@ -16,9 +18,58 @@ describe('git-hours', function() { var work = JSON.parse(stdout); assert.notEqual(work.total.hours.length, 0); assert.notEqual(work.total.commits.length, 0); + totalHoursCount = work.total.hours; + done(); + }); + }); + }); + + describe('Since option', function(){ + it('Should analyse since today', function(done) { + exec('node index.js --since today', function(err, stdout, stderr) { + assert.ifError(err); + var work = JSON.parse(stdout); + assert.strictEqual(typeof work.total.hours, 'number'); + done(); + }); + }); + + it('Should analyse since yesterday', function(done) { + exec('node index.js --since yesterday', function(err, stdout, stderr) { + assert.ifError(err); + var work = JSON.parse(stdout); + assert.strictEqual(typeof work.total.hours, 'number'); + done(); + }); + }); + + it('Should analyse since last week', function(done){ + exec('node index.js --since lastweek', function(err, stdout, stderr) { + assert.ifError(err); + var work = JSON.parse(stdout); + assert.strictEqual(typeof work.total.hours, 'number'); + done(); + }); + }); + + it('Should analyse since a specific date', function(done){ + exec('node index.js --since 2015-01-01', function(err, stdout, stderr) { + assert.ifError(err); + var work = JSON.parse(stdout); + assert.notEqual(work.total.hours, 0); + done(); + }); + }); + it('Should analyse as without param', function(done){ + exec('node index.js --since always', function(err, stdout, stderr) { + assert.ifError(err); + var work = JSON.parse(stdout); + assert.equal(work.total.hours, totalHoursCount); done(); }); }); }); + + }); |