Test html line prefixes
This commit is contained in:
parent
246e459749
commit
7244f07e0a
2 changed files with 96 additions and 0 deletions
|
|
@ -46,6 +46,7 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"codacy-coverage": "^1.1.3",
|
"codacy-coverage": "^1.1.3",
|
||||||
|
"fast-html-parser": "^1.0.1",
|
||||||
"istanbul": "^0.4.1",
|
"istanbul": "^0.4.1",
|
||||||
"less": "2.5.*",
|
"less": "2.5.*",
|
||||||
"mocha": "^2.3.4",
|
"mocha": "^2.3.4",
|
||||||
|
|
|
||||||
|
|
@ -21,4 +21,99 @@ describe('SideBySidePrinter', function() {
|
||||||
assert.equal(expectedLeft, fileHtml.left);
|
assert.equal(expectedLeft, fileHtml.left);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('generateSideBySideFileHtml', function() {
|
||||||
|
it('should generate lines with the right prefixes', function() {
|
||||||
|
var sideBySidePrinter = new SideBySidePrinter({});
|
||||||
|
|
||||||
|
var file = {
|
||||||
|
"blocks": [{
|
||||||
|
"lines": [{
|
||||||
|
"content": " context",
|
||||||
|
"type": "d2h-cntx",
|
||||||
|
"oldNumber": 19,
|
||||||
|
"newNumber": 19
|
||||||
|
}, {"content": "-removed", "type": "d2h-del", "oldNumber": 20, "newNumber": null}, {
|
||||||
|
"content": "+added",
|
||||||
|
"type": "d2h-ins",
|
||||||
|
"oldNumber": null,
|
||||||
|
"newNumber": 20
|
||||||
|
}], "oldStartLine": "19", "newStartLine": "19", "header": "@@ -19,7 +19,7 @@"
|
||||||
|
}],
|
||||||
|
"deletedLines": 1,
|
||||||
|
"addedLines": 1,
|
||||||
|
"checksumBefore": "fc56817",
|
||||||
|
"checksumAfter": "e8e7e49",
|
||||||
|
"mode": "100644",
|
||||||
|
"oldName": "coverage.init",
|
||||||
|
"language": "init",
|
||||||
|
"newName": "coverage.init",
|
||||||
|
"isCombined": false
|
||||||
|
};
|
||||||
|
|
||||||
|
var fileHtml = sideBySidePrinter.generateSideBySideFileHtml(file);
|
||||||
|
|
||||||
|
var expectedRight = '<tr>' +
|
||||||
|
' <td class="d2h-code-side-linenumber d2h-info"></td>' +
|
||||||
|
' <td class="d2h-info">' +
|
||||||
|
' <div class="d2h-code-side-line d2h-info"></div>' +
|
||||||
|
' </td>' +
|
||||||
|
'</tr>' +
|
||||||
|
'<tr>' +
|
||||||
|
' <td class="d2h-code-side-linenumber d2h-cntx">19</td>' +
|
||||||
|
' <td class="d2h-cntx">' +
|
||||||
|
' <div class="d2h-code-side-line d2h-cntx">' +
|
||||||
|
' <span class="d2h-code-line-prefix"> </span>' +
|
||||||
|
' <span class="d2h-code-line-ctn">context</span>' +
|
||||||
|
' </div>' +
|
||||||
|
' </td>' +
|
||||||
|
'</tr>' +
|
||||||
|
'<tr>' +
|
||||||
|
' <td class="d2h-code-side-linenumber d2h-ins">20</td>' +
|
||||||
|
' <td class="d2h-ins">' +
|
||||||
|
' <div class="d2h-code-side-line d2h-ins">' +
|
||||||
|
' <span class="d2h-code-line-prefix">+</span>' +
|
||||||
|
' <span class="d2h-code-line-ctn"><ins>added</ins></span>' +
|
||||||
|
' </div>' +
|
||||||
|
' </td>' +
|
||||||
|
'</tr>';
|
||||||
|
|
||||||
|
var expectedLeft = '<tr>' +
|
||||||
|
' <td class="d2h-code-side-linenumber d2h-info"></td>' +
|
||||||
|
' <td class="d2h-info">' +
|
||||||
|
' <div class="d2h-code-side-line d2h-info"> @@ -19,7 +19,7 @@</div>' +
|
||||||
|
' </td>' +
|
||||||
|
'</tr>' +
|
||||||
|
'<tr>' +
|
||||||
|
' <td class="d2h-code-side-linenumber d2h-cntx">19</td>' +
|
||||||
|
' <td class="d2h-cntx">' +
|
||||||
|
' <div class="d2h-code-side-line d2h-cntx">' +
|
||||||
|
' <span class="d2h-code-line-prefix"> </span>' +
|
||||||
|
' <span class="d2h-code-line-ctn">context</span>' +
|
||||||
|
' </div>' +
|
||||||
|
' </td>' +
|
||||||
|
'</tr>' +
|
||||||
|
'<tr>' +
|
||||||
|
' <td class="d2h-code-side-linenumber d2h-del">20</td>' +
|
||||||
|
' <td class="d2h-del">' +
|
||||||
|
' <div class="d2h-code-side-line d2h-del">' +
|
||||||
|
' <span class="d2h-code-line-prefix">-</span>' +
|
||||||
|
' <span class="d2h-code-line-ctn"><del>removed</del></span>' +
|
||||||
|
' </div>' +
|
||||||
|
' </td>' +
|
||||||
|
'</tr>';
|
||||||
|
|
||||||
|
var HTMLParser = require('fast-html-parser');
|
||||||
|
|
||||||
|
var parsedExpectedRight = HTMLParser.parse(expectedRight);
|
||||||
|
var parsedFileRight = HTMLParser.parse(fileHtml.right);
|
||||||
|
assert.equal(parsedExpectedRight.querySelectorAll(".d2h-code-line-prefix").length > 0, true);
|
||||||
|
assert.equal(parsedExpectedRight.querySelectorAll(".d2h-code-line-prefix").length, parsedFileRight.querySelectorAll(".d2h-code-line-prefix").length);
|
||||||
|
|
||||||
|
var parsedExpectedLeft = HTMLParser.parse(expectedLeft);
|
||||||
|
var parsedFileLeft = HTMLParser.parse(fileHtml.left);
|
||||||
|
assert.equal(parsedExpectedLeft.querySelectorAll(".d2h-code-line-prefix").length > 0, true);
|
||||||
|
assert.equal(parsedExpectedLeft.querySelectorAll(".d2h-code-line-prefix").length, parsedFileLeft.querySelectorAll(".d2h-code-line-prefix").length);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue