UNPKG

@bitloops/bl-transpiler

Version:
46 lines 2.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const Transpiler_js_1 = tslib_1.__importDefault(require("../../../src/Transpiler.js")); const index_js_1 = require("../../../src/ast/core/index.js"); const index_js_2 = require("../../../src/parser/index.js"); const index_js_3 = require("../../../src/target/index.js"); const index_js_4 = require("./mocks/semantic-errors/not-defined-member/index.js"); describe('Not defined members test cases', () => { const boundedContext = 'Hello world'; const module = 'demo'; index_js_4.SYMBOL_TABLE_MEMBER_NOT_DEFINED_TEST_CASES.forEach((testCase) => { const parser = new index_js_2.BitloopsParser(); const originalLanguageASTToIntermediateModelTransformer = new index_js_1.IntermediateASTParser(); const intermediateASTModelToTargetLanguageGenerator = new index_js_3.TargetGenerator(); const transpiler = new Transpiler_js_1.default(parser, originalLanguageASTToIntermediateModelTransformer, intermediateASTModelToTargetLanguageGenerator); it(`${testCase.description}`, async () => { // given const input = { core: [ { boundedContext, module, fileId: 'fileId', fileContents: testCase.inputCore, }, ], setup: [ { boundedContext, module, fileId: 'fileId', fileContents: testCase.inputSetup, }, ], }; // when const result = transpiler.getSymbolTable(input); if (Transpiler_js_1.default.isTranspilerError(result)) { throw new Error('Transpiler should NOT return error'); } expect(result.semanticErrors.map((x) => x.message)).toEqual(testCase.errorMessages); }); }); }); //# sourceMappingURL=member-not-defined.steps.js.map