Start using mocha with istambul to test and setup circleci

This commit is contained in:
Rodrigo Fernandes 2015-12-22 15:48:33 +00:00
parent 7920de8924
commit 9e550c2b65
6 changed files with 63 additions and 41 deletions

9
circle.yml Normal file
View file

@ -0,0 +1,9 @@
test:
override:
- nvm install 0.12 && npm test
- nvm install 4 && npm test
post:
- npm install
- istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec
- cat ./coverage/lcov.info | ./node_modules/.bin/codacy-coverage
- rm -rf ./coverage

View file

@ -36,17 +36,21 @@
},
"preferGlobal": "true",
"scripts": {
"release": "bash release.sh"
"release": "bash release.sh",
"test": "mocha",
"codacy": "istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec && cat ./coverage/lcov.info | ./node_modules/.bin/codacy-coverage && rm -rf ./coverage"
},
"main": "./src/diff2html.js",
"dependencies": {
"diff": "2.2.*"
},
"devDependencies": {
"webpack": "1.12.*",
"uglifyjs": "2.4.*",
"codacy-coverage": "^1.1.3",
"istanbul": "^0.4.1",
"less": "2.5.*",
"nodeunit": "^0.9.1"
"mocha": "^2.3.4",
"uglifyjs": "2.4.*",
"webpack": "1.12.*"
},
"license": "MIT",
"files": [

View file

@ -0,0 +1,22 @@
var assert = require('assert');
var LineByLinePrinter = require('../src/line-by-line-printer.js').LineByLinePrinter;
describe('LineByLinePrinter', function() {
describe('_generateEmptyDiff', function() {
it('should return an empty diff', function() {
var lineByLinePrinter = new LineByLinePrinter({});
var fileHtml = lineByLinePrinter._generateEmptyDiff();
var expected = '<tr>\n' +
' <td class="d2h-info">' +
' <div class="d2h-code-line d2h-info">' +
'File without changes' +
' </div>' +
' </td>\n' +
'</tr>\n';
assert.equal(expected, fileHtml);
});
});
});

View file

@ -0,0 +1,24 @@
var assert = require('assert');
var SideBySidePrinter = require('../src/side-by-side-printer.js').SideBySidePrinter;
describe('SideBySidePrinter', function() {
describe('generateEmptyDiff', function() {
it('should return an empty diff', function() {
var sideBySidePrinter = new SideBySidePrinter({});
var fileHtml = sideBySidePrinter.generateEmptyDiff();
var expectedRight = '';
var expectedLeft = '<tr>\n' +
' <td class="d2h-info">' +
' <div class="d2h-code-side-line d2h-info">' +
'File without changes' +
' </div>' +
' </td>\n' +
'</tr>\n';
assert.equal(expectedRight, fileHtml.right);
assert.equal(expectedLeft, fileHtml.left);
});
});
});

View file

@ -1,18 +0,0 @@
var LineByLinePrinter = require('../src/line-by-line-printer.js').LineByLinePrinter;
module.exports = {
testGenerateEmptyDiff: function (test) {
var lineByLinePrinter = new LineByLinePrinter({});
var fileHtml = lineByLinePrinter._generateEmptyDiff();
var expected = '<tr>\n' +
' <td class="d2h-info">' +
' <div class="d2h-code-line d2h-info">' +
'File without changes' +
' </div>' +
' </td>\n' +
'</tr>\n';
test.equal(expected, fileHtml);
test.done();
}
};

View file

@ -1,19 +0,0 @@
var SideBySidePrinter = require('../src/side-by-side-printer.js').SideBySidePrinter;
module.exports = {
testGenerateEmptyDiff: function (test) {
var sideBySidePrinter = new SideBySidePrinter({});
var fileHtml = sideBySidePrinter.generateEmptyDiff();
var expectedRight = '';
var expectedLeft = '<tr>\n' +
' <td class="d2h-info">' +
' <div class="d2h-code-side-line d2h-info">' +
'File without changes' +
' </div>' +
' </td>\n' +
'</tr>\n';
test.equal(expectedRight, fileHtml.right);
test.equal(expectedLeft, fileHtml.left);
test.done();
}
};