48 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			48 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								var testPackage = require('../../helpers/test-package');
							 | 
						||
| 
								 | 
							
								var Dgeni = require('dgeni');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var getDocFromAlias, aliasMap;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								describe('getDocFromAlias', function() {
							 | 
						||
| 
								 | 
							
								  beforeEach(function() {
							 | 
						||
| 
								 | 
							
								    var dgeni = new Dgeni([testPackage('links-package', true)]);
							 | 
						||
| 
								 | 
							
								    var injector = dgeni.configureInjector();
							 | 
						||
| 
								 | 
							
								    aliasMap = injector.get('aliasMap');
							 | 
						||
| 
								 | 
							
								    getDocFromAlias = injector.get('getDocFromAlias');
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should return an array of docs that match the alias', function() {
							 | 
						||
| 
								 | 
							
								    var doc1 = {aliases: ['a', 'b', 'c']};
							 | 
						||
| 
								 | 
							
								    var doc2 = {aliases: ['a', 'b']};
							 | 
						||
| 
								 | 
							
								    var doc3 = {aliases: ['a']};
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc1);
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc2);
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc3);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    expect(getDocFromAlias('a')).toEqual([doc1, doc2, doc3]);
							 | 
						||
| 
								 | 
							
								    expect(getDocFromAlias('b')).toEqual([doc1, doc2]);
							 | 
						||
| 
								 | 
							
								    expect(getDocFromAlias('c')).toEqual([doc1]);
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should return docs that match the alias and originating doc\'s area', function() {
							 | 
						||
| 
								 | 
							
								    var doc1 = {aliases: ['a'], area: 'api'};
							 | 
						||
| 
								 | 
							
								    var doc2 = {aliases: ['a'], area: 'api'};
							 | 
						||
| 
								 | 
							
								    var doc3 = {aliases: ['a'], area: 'other'};
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc1);
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc2);
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc3);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    expect(getDocFromAlias('a', {area: 'api'})).toEqual([doc1, doc2]);
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  it('should return docs that match the alias and originating doc\'s area and module', function() {
							 | 
						||
| 
								 | 
							
								    var doc1 = {aliases: ['a'], area: 'api', module: 'ng'};
							 | 
						||
| 
								 | 
							
								    var doc2 = {aliases: ['a'], area: 'api', module: 'ngMock'};
							 | 
						||
| 
								 | 
							
								    var doc3 = {aliases: ['a'], area: 'other', module: 'ng'};
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc1);
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc2);
							 | 
						||
| 
								 | 
							
								    aliasMap.addDoc(doc3);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    expect(getDocFromAlias('a', {area: 'api', module: 'ng'})).toEqual([doc1]);
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								});
							 |