From 7fe46e8d7e35c21167932c57b4ed53171164d1e2 Mon Sep 17 00:00:00 2001 From: Vojta Jina Date: Wed, 18 May 2011 13:31:26 +0200 Subject: Bit of refactoring --- docs/spec/ngdocSpec.js | 12 ++++++------ docs/src/ngdoc.js | 35 ++++++++++++++++------------------- 2 files changed, 22 insertions(+), 25 deletions(-) diff --git a/docs/spec/ngdocSpec.js b/docs/spec/ngdocSpec.js index c2fe3a4d..ab313c1b 100644 --- a/docs/spec/ngdocSpec.js +++ b/docs/spec/ngdocSpec.js @@ -192,15 +192,15 @@ describe('ngdoc', function(){ describe('merge', function(){ it('should merge child with parent', function(){ - var parent = new Doc({name:'angular.service.abc'}); - var methodA = new Doc({name:'methodA', methodOf:'angular.service.abc'}); - var methodB = new Doc({name:'methodB', methodOf:'angular.service.abc'}); - var propA = new Doc({name:'propA', propertyOf:'angular.service.abc'}); - var propB = new Doc({name:'propB', propertyOf:'angular.service.abc'}); + var parent = new Doc({id: 'angular.service.abc', name: 'angular.service.abc', section: 'api'}); + var methodA = new Doc({name: 'methodA', methodOf: 'angular.service.abc'}); + var methodB = new Doc({name: 'methodB', methodOf: 'angular.service.abc'}); + var propA = new Doc({name: 'propA', propertyOf: 'angular.service.abc'}); + var propB = new Doc({name: 'propB', propertyOf: 'angular.service.abc'}); var docs = [methodB, methodA, propB, propA, parent]; // keep wrong order; ngdoc.merge(docs); expect(docs.length).toEqual(1); - expect(docs[0].name).toEqual('angular.service.abc'); + expect(docs[0].id).toEqual('angular.service.abc'); expect(docs[0].methods).toEqual([methodA, methodB]); expect(docs[0].properties).toEqual([propA, propB]); }); diff --git a/docs/src/ngdoc.js b/docs/src/ngdoc.js index decce79b..d68aaaea 100644 --- a/docs/src/ngdoc.js +++ b/docs/src/ngdoc.js @@ -669,36 +669,33 @@ function indent(text, spaceCount) { ////////////////////////////////////////////////////////// function merge(docs){ - // TODO(vojta) refactor to use only byFullId hash map - var byName = {}, - byFullId = {}; + var byFullId = {}; - docs.forEach(function(doc){ - byName[doc.name] = doc; + docs.forEach(function (doc) { byFullId[doc.section + '/' + doc.id] = doc; }); - for(var i=0; i