From 608f35b4a7bd02f9cb4980b715d32f302f089f70 Mon Sep 17 00:00:00 2001 From: Peter Bacon Darwin Date: Wed, 16 Sep 2015 14:41:51 +0100 Subject: [PATCH] chore(doc-gen/angular.io): sort exports alphabetically --- .../processors/addJadeDataDocsProcessor.js | 9 ++++-- .../addJadeDataDocsProcessor.spec.js | 29 +++++++++++++++++++ 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/docs/angular.io-package/processors/addJadeDataDocsProcessor.js b/docs/angular.io-package/processors/addJadeDataDocsProcessor.js index 9ae336c469..185ce1892c 100644 --- a/docs/angular.io-package/processors/addJadeDataDocsProcessor.js +++ b/docs/angular.io-package/processors/addJadeDataDocsProcessor.js @@ -48,13 +48,18 @@ module.exports = function addJadeDataDocsProcessor() { }]; // GET DATA FOR EACH PAGE (CLASS, VARS, FUNCTIONS) - var modulePageInfo = _.map(doc.exports, function(exportDoc) { + var modulePageInfo = _(doc.exports) + .map(function(exportDoc) { return { name: exportDoc.name + '-' + exportDoc.docType, title: exportDoc.name, varType: exportDoc.symbolTypeName && titleCase(exportDoc.symbolTypeName) }; - }); + }) + .sortBy('name') + .value(); + + //COMBINE PAGE DATA var allPageData = indexPageInfo.concat(modulePageInfo); diff --git a/docs/angular.io-package/processors/addJadeDataDocsProcessor.spec.js b/docs/angular.io-package/processors/addJadeDataDocsProcessor.spec.js index e0e4c5965d..22ef95a7ce 100644 --- a/docs/angular.io-package/processors/addJadeDataDocsProcessor.spec.js +++ b/docs/angular.io-package/processors/addJadeDataDocsProcessor.spec.js @@ -32,4 +32,33 @@ describe('addJadeDataDocsProcessor', function() { { name : 'MyClass-class', title : 'MyClass', varType : undefined } ] }); }); + + it('should sort the exports into alphabetical order', function() { + var docs = [ + { + docType: 'module', + id: 'someModule', + exports: [ + { name: 'Beta', docType: 'class'}, + { name: 'Alpha', docType: 'class'}, + { name: 'Gamma', docType: 'class'}, + { name: 'Nu', docType: 'class'}, + { name: 'Mu', docType: 'class'} + ], + fileInfo: { baseName: 'x_y' }, + description: 'some description\nsecond line' + } + ]; + docs = processor.$process(docs); + + expect(docs[1].data).toEqual([ + { name : 'index', title : 'X Y', intro : 'some description second line' }, + { name: 'Alpha-class', title: 'Alpha', varType : undefined }, + { name: 'Beta-class', title: 'Beta', varType : undefined }, + { name: 'Gamma-class', title: 'Gamma', varType : undefined }, + { name: 'Mu-class', title: 'Mu', varType : undefined }, + { name: 'Nu-class', title: 'Nu', varType : undefined } + ]); + + }); });