UNPKG

@microsoft/api-extractor

Version:

Validatation, documentation, and auditing for the exported API of a TypeScript package

57 lines (55 loc) 2.9 kB
/// <reference types="mocha" /> "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var chai_1 = require("chai"); var ApiDefinitionReference_1 = require("../ApiDefinitionReference"); /* tslint:disable:no-function-expression - Mocha uses a poorly scoped "this" pointer */ var capturedErrors = []; function testErrorHandler(message, fileName, lineNumber) { capturedErrors.push({ message: message, fileName: fileName, lineNumber: lineNumber }); } describe('ApiDocumentation tests', function () { this.timeout(10000); describe('ApiDocumentation internal methods', function () { var apiReferenceExpr; var actual; it('_parseApiReferenceExpression() with scope name', function () { apiReferenceExpr = '@microsoft/sp-core-library:Guid'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); chai_1.assert.equal('@microsoft', actual.scopeName); chai_1.assert.equal('sp-core-library', actual.packageName); chai_1.assert.equal('Guid', actual.exportName); chai_1.assert.equal('', actual.memberName); }); it('_parseApiReferenceExpression() without scope name', function () { apiReferenceExpr = 'sp-core-library:Guid'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); chai_1.assert.equal('', actual.scopeName); chai_1.assert.equal('sp-core-library', actual.packageName); chai_1.assert.equal('Guid', actual.exportName); chai_1.assert.equal('', actual.memberName); }); it('_parseApiReferenceExpression() without scope name and with member name', function () { apiReferenceExpr = 'sp-core-library:Guid.equals'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); chai_1.assert.equal('', actual.scopeName); chai_1.assert.equal('sp-core-library', actual.packageName); chai_1.assert.equal('Guid', actual.exportName); chai_1.assert.equal('equals', actual.memberName); }); it('_parseApiReferenceExpression() without scope name and invalid memberName', function () { // This won't raise an error (based on our current decision to only show warnings in the *.api.ts // files if we can't find a reference) apiReferenceExpr = 'sp-core-library:Guid:equals'; var caughtError = false; try { actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); } catch (error) { caughtError = true; } chai_1.assert.equal(caughtError, true); }); }); }); //# sourceMappingURL=ApiDefinitionReference.test.js.map