Merge pull request #190 from brewern/render_nothing_when_empty
Add configuration for rendering nothing if the diff shows no changes were made.
This commit is contained in:
commit
8055f309da
4 changed files with 23 additions and 2 deletions
|
|
@ -188,6 +188,7 @@ The HTML output accepts a Javascript object with configuration. Possible options
|
|||
- `maxLineLengthHighlight`: only perform diff changes highlight if lines are smaller than this, default is `10000`
|
||||
- `templates`: object with previously compiled templates to replace parts of the html
|
||||
- `rawTemplates`: object with raw not compiled templates to replace parts of the html
|
||||
- `renderNothingWhenEmpty`: render nothing if the diff shows no change in its comparison: `true` or `false`, default is `false`
|
||||
> For more information regarding the possible templates look into [src/templates](https://github.com/rtfpessoa/diff2html/tree/master/src/templates)
|
||||
|
||||
** Diff2HtmlUI Helper Options **
|
||||
|
|
|
|||
|
|
@ -19,7 +19,8 @@
|
|||
matching: 'none',
|
||||
matchWordsThreshold: 0.25,
|
||||
matchingMaxComparisons: 2500,
|
||||
maxLineLengthHighlight: 10000
|
||||
maxLineLengthHighlight: 10000,
|
||||
renderNothingWhenEmpty: false
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -26,6 +26,8 @@
|
|||
}
|
||||
|
||||
LineByLinePrinter.prototype.makeFileDiffHtml = function(file, diffs) {
|
||||
if (this.config.renderNothingWhenEmpty && file.blocks && !file.blocks.length) return '';
|
||||
|
||||
var fileDiffTemplate = hoganUtils.template(baseTemplatesPath, 'file-diff');
|
||||
var filePathTemplate = hoganUtils.template(genericTemplatesPath, 'file-path');
|
||||
var fileIconTemplate = hoganUtils.template(iconsBaseTemplatesPath, 'file');
|
||||
|
|
|
|||
|
|
@ -279,6 +279,23 @@ describe('LineByLinePrinter', function() {
|
|||
' </div>\n' +
|
||||
'</div>';
|
||||
|
||||
assert.equal(expected, fileHtml);
|
||||
});
|
||||
it('should return empty when option renderNothingWhenEmpty is true and file blocks not present', function() {
|
||||
var lineByLinePrinter = new LineByLinePrinter({
|
||||
renderNothingWhenEmpty: true
|
||||
});
|
||||
|
||||
var file = {
|
||||
blocks: []
|
||||
};
|
||||
|
||||
var diffs = '<span>Random Html</span>';
|
||||
|
||||
var fileHtml = lineByLinePrinter.makeFileDiffHtml(file, diffs);
|
||||
|
||||
var expected = '';
|
||||
|
||||
assert.equal(expected, fileHtml);
|
||||
});
|
||||
});
|
||||
|
|
@ -399,7 +416,7 @@ describe('LineByLinePrinter', function() {
|
|||
isCombined: false
|
||||
}];
|
||||
|
||||
var lineByLinePrinter = new LineByLinePrinter();
|
||||
var lineByLinePrinter = new LineByLinePrinter({ renderNothingWhenEmpty: false });
|
||||
var html = lineByLinePrinter.generateLineByLineJsonHtml(exampleJson);
|
||||
var expected =
|
||||
'<div class="d2h-wrapper">\n' +
|
||||
|
|
|
|||
Loading…
Reference in a new issue