UNPKG

@microsoft/api-extractor

Version:

Validate, document, and review the exported API for a TypeScript library

54 lines (52 loc) 2.77 kB
"use strict"; // Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license. // See LICENSE in the project root for license information. Object.defineProperty(exports, "__esModule", { value: true }); const ApiDefinitionReference_1 = require("../ApiDefinitionReference"); /* tslint:disable:no-function-expression - Mocha uses a poorly scoped "this" pointer */ let capturedErrors = []; function clearCapturedErrors() { capturedErrors = []; } function assertCapturedErrors(expectedMessages) { expect(capturedErrors.map(x => x.message)).toEqual(expectedMessages); } describe('ApiDocumentation tests', function () { describe('ApiDocumentation internal methods', function () { let apiReferenceExpr; let actual; it('_parseApiReferenceExpression() with scope name', function () { apiReferenceExpr = '@microsoft/sp-core-library:Guid'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); expect(actual.scopeName).toBe('@microsoft'); expect(actual.packageName).toBe('sp-core-library'); expect(actual.exportName).toBe('Guid'); expect(actual.memberName).toBe(''); }); it('_parseApiReferenceExpression() without scope name', function () { apiReferenceExpr = 'sp-core-library:Guid'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); expect(actual.scopeName).toBe(''); expect(actual.packageName).toBe('sp-core-library'); expect(actual.exportName).toBe('Guid'); expect(actual.memberName).toBe(''); }); it('_parseApiReferenceExpression() without scope name and with member name', function () { apiReferenceExpr = 'sp-core-library:Guid.equals'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); expect(actual.scopeName).toBe(''); expect(actual.packageName).toBe('sp-core-library'); expect(actual.exportName).toBe('Guid'); expect(actual.memberName).toBe('equals'); }); it('_parseApiReferenceExpression() without scope name and invalid memberName', function () { clearCapturedErrors(); // 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'; actual = ApiDefinitionReference_1.default.createFromString(apiReferenceExpr, console.log); assertCapturedErrors([]); }); }); }); //# sourceMappingURL=ApiDefinitionReference.test.js.map