ts-simple-ast
Version:
TypeScript compiler wrapper for AST navigation and code generation.
26 lines (24 loc) • 1.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const chai_1 = require("chai");
const testHelpers_1 = require("./../testHelpers");
describe("PropertyAccessExpression", () => {
function getPropertyAccessExpression(text) {
const { sourceFile } = testHelpers_1.getInfoFromText(text);
return sourceFile.getVariableDeclarations()[0].getInitializerOrThrow();
}
it("should get the property access expression when only one dot", () => {
const propertyAccessExpression = getPropertyAccessExpression("const t = M.N;");
chai_1.expect(propertyAccessExpression.getExpression().getText()).to.equal("M");
chai_1.expect(propertyAccessExpression.getNameIdentifier().getText()).to.equal("N");
});
it("should get the nested property access expression when two dots", () => {
const propertyAccessExpression = getPropertyAccessExpression("const t = M.N.O;");
const nestedExpression = propertyAccessExpression.getExpression();
chai_1.expect(nestedExpression.getText()).to.equal("M.N");
chai_1.expect(nestedExpression.getExpression().getText()).to.equal("M");
chai_1.expect(nestedExpression.getName()).to.equal("N");
chai_1.expect(propertyAccessExpression.getNameIdentifier().getText()).to.equal("O");
});
});
//# sourceMappingURL=propertyAccessExpressionTests.js.map