diff --git a/public/api-builder/angular.io-package/rendering/trimBlankLines.js b/public/api-builder/angular.io-package/rendering/trimBlankLines.js index 82728d7635..510c7617ac 100644 --- a/public/api-builder/angular.io-package/rendering/trimBlankLines.js +++ b/public/api-builder/angular.io-package/rendering/trimBlankLines.js @@ -1,9 +1,9 @@ -module.exports = function(encodeCodeBlock) { +module.exports = function() { return { name: 'trimBlankLines', process: function(str) { var lines = str.split(/\r?\n/); - while(lines[0] === '') { + while(lines.length && (lines[0].trim() === '')) { lines.shift(); } return lines.join('\n'); diff --git a/public/api-builder/angular.io-package/rendering/trimBlankLines.spec.js b/public/api-builder/angular.io-package/rendering/trimBlankLines.spec.js new file mode 100644 index 0000000000..762fc9fd2e --- /dev/null +++ b/public/api-builder/angular.io-package/rendering/trimBlankLines.spec.js @@ -0,0 +1,18 @@ +var factory = require('./trimBlankLines'); + +describe('trimBlankLines filter', function() { + var filter; + + beforeEach(function() { + filter = factory(); + }); + + it('should be called "trimBlankLines"', function() { + expect(filter.name).toEqual('trimBlankLines'); + }); + + it('should remove all empty lines from the start of the string', function() { + expect(filter.process('\n\n\nsome text\n\nmore text\n\n')) + .toEqual('some text\n\nmore text\n\n'); + }); +}); \ No newline at end of file