Skip to content

Commit f68f930

Browse files
author
Eugene Marcotte
committed
Expose oldName and newName to file list templates
1 parent 0697ac6 commit f68f930

2 files changed

Lines changed: 49 additions & 2 deletions

File tree

src/file-list-printer.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@
2929

3030
return lineTemplate.render({
3131
fileHtmlId: printerUtils.getHtmlId(file),
32+
oldName: file.oldName,
33+
newName: file.newName,
3234
fileName: printerUtils.getDiffName(file),
3335
deletedLines: '-' + file.deletedLines,
3436
addedLines: '+' + file.addedLines

test/file-list-printer-tests.js

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,53 @@
11
var assert = require('assert');
2-
3-
var fileListPrinter = new (require('../src/file-list-printer.js').FileListPrinter)();
2+
var FileListPrinter = require('../src/file-list-printer.js').FileListPrinter;
43

54
describe('FileListPrinter', function() {
65
describe('generateFileList', function() {
6+
it('should expose old and new files to templates', function() {
7+
var files = [{
8+
addedlines: 12,
9+
deletedlines: 41,
10+
language: 'js',
11+
oldName: 'my/file/name.js',
12+
newName: 'my/file/name.js'
13+
}, {
14+
addedLines: 12,
15+
deletedLines: 41,
16+
language: 'js',
17+
oldName: 'my/file/name1.js',
18+
newName: 'my/file/name2.js'
19+
}, {
20+
addedLines: 12,
21+
deletedLines: 0,
22+
language: 'js',
23+
oldName: 'dev/null',
24+
newName: 'my/file/name.js',
25+
isNew: true
26+
}, {
27+
addedLines: 0,
28+
deletedLines: 41,
29+
language: 'js',
30+
oldName: 'my/file/name.js',
31+
newName: 'dev/null',
32+
isDeleted: true
33+
}];
34+
35+
var fileListPrinter = new FileListPrinter({
36+
rawTemplates: {
37+
'file-summary-wrapper': '{{{files}}}',
38+
'file-summary-line': '{{oldName}}, {{newName}}, {{fileName}}'
39+
}
40+
});
41+
42+
var fileHtml = fileListPrinter.generateFileList(files);
43+
var expected = 'my/file/name.js, my/file/name.js, my/file/name.js\n' +
44+
'my/file/name1.js, my/file/name2.js, my/file/{name1.js → name2.js}\n' +
45+
'dev/null, my/file/name.js, my/file/name.js\n' +
46+
'my/file/name.js, dev/null, my/file/name.js';
47+
48+
assert.equal(expected, fileHtml);
49+
});
50+
751
it('should work for all kinds of files', function() {
852
var files = [{
953
addedLines: 12,
@@ -33,6 +77,7 @@ describe('FileListPrinter', function() {
3377
isDeleted: true
3478
}];
3579

80+
var fileListPrinter = new FileListPrinter();
3681
var fileHtml = fileListPrinter.generateFileList(files);
3782

3883
var expected =

0 commit comments

Comments
 (0)