79 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| var mockPackage = require('../mocks/mockPackage');
 | |
| var Dgeni = require('dgeni');
 | |
| 
 | |
| describe('addJadeDataDocsProcessor', function() {
 | |
|   var dgeni, injector, processor;
 | |
| 
 | |
|   beforeEach(function() {
 | |
|     dgeni = new Dgeni([mockPackage()]);
 | |
|     injector = dgeni.configureInjector();
 | |
|     processor = injector.get('addJadeDataDocsProcessor');
 | |
|   });
 | |
| 
 | |
|   it('should add a doc for each module', function() {
 | |
|     var exportDoc;
 | |
|     var docs = [
 | |
|       {
 | |
|         docType: 'module',
 | |
|         id: 'someModule',
 | |
|         exports: [
 | |
|           exportDoc = { name: 'someObj', docType: 'var', symbolTypeName: 'MyClass', originalModule: 'some/private/module' }
 | |
|         ],
 | |
|         fileInfo: { baseName: 'x_y' },
 | |
|         description: 'some description\nsecond line'
 | |
|       }
 | |
|     ];
 | |
|     docs = processor.$process(docs);
 | |
| 
 | |
|     expect(docs.filter(function(doc) { return doc.docType === 'jade-data'; })[0]).toEqual({
 | |
|       id : 'someModule-data',
 | |
|       aliases : [ 'someModule-data' ],
 | |
|       docType : 'jade-data',
 | |
|       originalDoc : docs[0],
 | |
|       data : [
 | |
|         { name : 'index', title : 'X Y', intro : 'some description second line', docType : 'module' },
 | |
|         {
 | |
|           name : 'someObj-var',
 | |
|           title : 'someObj',
 | |
|           varType : 'MyClass',
 | |
|           docType: 'var',
 | |
|           originalModule: 'some/private/module',
 | |
|           exportDoc: exportDoc,
 | |
|           stability : '',
 | |
|           howToUse : '',
 | |
|           whatItDoes : '',
 | |
|           security : false
 | |
|         }
 | |
|       ] });
 | |
|   });
 | |
| 
 | |
|   it('should sort the exports into alphabetical order', function() {
 | |
|     var alpha, beta, gamma, nu, mu;
 | |
|     var docs = [
 | |
|       {
 | |
|         docType: 'module',
 | |
|         id: 'someModule',
 | |
|         exports: [
 | |
|           beta = { name: 'Beta', docType: 'class'},
 | |
|           alpha = { name: 'Alpha', docType: 'class'},
 | |
|           gamma = { name: 'Gamma', docType: 'class'},
 | |
|           nu = { name: 'Nu', docType: 'class'},
 | |
|           mu = { name: 'Mu', docType: 'class'}
 | |
|         ],
 | |
|         fileInfo: { baseName: 'x_y' },
 | |
|         description: 'some description\nsecond line'
 | |
|       }
 | |
|     ];
 | |
|     docs = processor.$process(docs);
 | |
| 
 | |
|     expect(docs[2].data).toEqual({ someModule : [
 | |
|       { name: 'Alpha-class', title: 'Alpha', docType: 'class', exportDoc: alpha, stability : '', howToUse : '', whatItDoes : '', security : false },
 | |
|       { name: 'Beta-class', title: 'Beta', docType: 'class', exportDoc: beta, stability : '', howToUse : '', whatItDoes : '', security : false },
 | |
|       { name: 'Gamma-class', title: 'Gamma', docType: 'class', exportDoc: gamma, stability : '', howToUse : '', whatItDoes : '', security : false },
 | |
|       { name: 'Mu-class', title: 'Mu', docType: 'class', exportDoc: mu, stability : '', howToUse : '', whatItDoes : '', security : false },
 | |
|       { name: 'Nu-class', title: 'Nu', docType: 'class', exportDoc: nu, stability : '', howToUse : '', whatItDoes : '', security : false }
 | |
|     ]});
 | |
| 
 | |
|   });
 | |
| });
 |