From 678e5147d85375271ed92a73ff4d3dc8ea716a58 Mon Sep 17 00:00:00 2001 From: Paulo Bu Date: Tue, 22 Dec 2015 12:37:39 +0100 Subject: [PATCH] Adds unit tests using node-unit First approach to include unit tests in the code using node-unit. - Adds node unit dependency - Adds 2 very basic tests for LineByLine and SideBySide printers --- package.json | 3 ++- tests/line-by-line-tests.js | 18 ++++++++++++++++++ tests/side-by-side-printer-tests.js | 19 +++++++++++++++++++ 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 tests/line-by-line-tests.js create mode 100644 tests/side-by-side-printer-tests.js diff --git a/package.json b/package.json index 7572278..256a2a4 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,8 @@ "devDependencies": { "webpack": "1.12.*", "uglifyjs": "2.4.*", - "less": "2.5.*" + "less": "2.5.*", + "nodeunit": "^0.9.1" }, "license": "MIT", "files": [ diff --git a/tests/line-by-line-tests.js b/tests/line-by-line-tests.js new file mode 100644 index 0000000..cfc64ea --- /dev/null +++ b/tests/line-by-line-tests.js @@ -0,0 +1,18 @@ +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 = '\n' + + ' ' + + '
' + + 'File without changes' + + '
' + + ' \n' + + '\n'; + + test.equal(expected, fileHtml); + test.done(); + } +}; diff --git a/tests/side-by-side-printer-tests.js b/tests/side-by-side-printer-tests.js new file mode 100644 index 0000000..506f8e4 --- /dev/null +++ b/tests/side-by-side-printer-tests.js @@ -0,0 +1,19 @@ +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 = '\n' + + ' ' + + '
' + + 'File without changes' + + '
' + + ' \n' + + '\n'; + test.equal(expectedRight, fileHtml.right); + test.equal(expectedLeft, fileHtml.left); + test.done(); + } +};