It was running too late and so was being confused by the description being split into `shortDescription` and `description` properties. Closes #22748 PR Close #22770
		
			
				
	
	
		
			61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
const testPackage = require('../../helpers/test-package');
 | 
						|
const Dgeni = require('dgeni');
 | 
						|
 | 
						|
describe('addNotYetDocumentedProperty', function() {
 | 
						|
  let processor;
 | 
						|
 | 
						|
  beforeEach(function() {
 | 
						|
    const dgeni = new Dgeni([testPackage('angular-api-package')]);
 | 
						|
    const injector = dgeni.configureInjector();
 | 
						|
    processor = injector.get('addNotYetDocumentedProperty');
 | 
						|
    processor.docTypes = ['test'];
 | 
						|
    processor.properties = ['description', 'name'];
 | 
						|
  });
 | 
						|
 | 
						|
  it('should run at the right time', () => {
 | 
						|
    expect(processor.$runAfter).toEqual(['tags-extracted']);
 | 
						|
    expect(processor.$runBefore).toEqual(['processing-docs', 'splitDescription']);
 | 
						|
  });
 | 
						|
 | 
						|
  it('should mark docs with no `description` property as "not yet documented"', () => {
 | 
						|
    const docs = [
 | 
						|
      {id: 'a', docType: 'test', description: 'some content' },
 | 
						|
      {id: 'b', docType: 'test', description: '' },
 | 
						|
      {id: 'c', docType: 'test' },
 | 
						|
    ];
 | 
						|
 | 
						|
    processor.$process(docs);
 | 
						|
 | 
						|
    expect(docs[0].notYetDocumented).toBeFalsy();
 | 
						|
    expect(docs[1].notYetDocumented).toBeTruthy();
 | 
						|
    expect(docs[2].notYetDocumented).toBeTruthy();
 | 
						|
  });
 | 
						|
 | 
						|
  it('should ignore docs that do not match the specified doc types', () => {
 | 
						|
    const docs = [
 | 
						|
      {id: 'a', docType: 'other', description: '' },
 | 
						|
      {id: 'b', docType: 'other', shortDescription: '' },
 | 
						|
      {id: 'c', docType: 'other' },
 | 
						|
    ];
 | 
						|
 | 
						|
    processor.$process(docs);
 | 
						|
    expect(docs[0].notYetDocumented).toBeFalsy();
 | 
						|
    expect(docs[1].notYetDocumented).toBeFalsy();
 | 
						|
    expect(docs[2].notYetDocumented).toBeFalsy();
 | 
						|
  });
 | 
						|
 | 
						|
 | 
						|
  it('should not mark documents explicitly tagged as `@noDescription`', function() {
 | 
						|
    const docs = [
 | 
						|
      {id: 'a', docType: 'other', description: '', noDescription: true },
 | 
						|
      {id: 'b', docType: 'other', shortDescription: '', noDescription: true },
 | 
						|
      {id: 'c', docType: 'other', noDescription: true },
 | 
						|
    ];
 | 
						|
 | 
						|
    processor.$process(docs);
 | 
						|
    expect(docs[0].notYetDocumented).toBeFalsy();
 | 
						|
    expect(docs[1].notYetDocumented).toBeFalsy();
 | 
						|
    expect(docs[2].notYetDocumented).toBeFalsy();
 | 
						|
  });
 | 
						|
});
 |