UNPKG

ts-simple-ast

Version:

TypeScript compiler wrapper for AST navigation and code generation.

34 lines (32 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const ts = require("typescript"); const chai_1 = require("chai"); const testHelpers_1 = require("./../testHelpers"); describe("QualifiedName", () => { function getQualifiedName(text) { const { sourceFile } = testHelpers_1.getInfoFromText(text); const typeRefNode = sourceFile.getVariableDeclarations()[0].getTypeNodeOrThrow(); const qualifiedName = typeRefNode.getTypeName(); chai_1.expect(qualifiedName.getKind()).to.equal(ts.SyntaxKind.QualifiedName); return qualifiedName; } describe("getRight", () => { it("should get the identifier on the right", () => { const qualifiedName = getQualifiedName("const t: Some.Qualified.Name<string>"); chai_1.expect(qualifiedName.getRight().getText()).to.equal("Name"); }); }); describe("getLeft", () => { it("should get the qualified name on the left while it lasts", () => { const qualifiedName = getQualifiedName("const t: Some.Qualified.Name<string>"); chai_1.expect(qualifiedName.getLeft().getText()).to.equal("Some.Qualified"); const leftQualifiedName = qualifiedName.getLeft(); chai_1.expect(leftQualifiedName.getRight().getText()).to.equal("Qualified"); chai_1.expect(leftQualifiedName.getRight().getKind()).to.equal(ts.SyntaxKind.Identifier); chai_1.expect(leftQualifiedName.getLeft().getText()).to.equal("Some"); chai_1.expect(leftQualifiedName.getLeft().getKind()).to.equal(ts.SyntaxKind.Identifier); }); }); }); //# sourceMappingURL=qualifiedNameTests.js.map