import { IVProgParser } from './../js/ast/ivprogParser'; import { SemanticAnalyser } from './../js/processor/semantic/semanticAnalyser'; import { LanguageService } from '../js/services/languageService'; describe('The semantic analyser', function () { const code = `programa { funcao inicio() { real a; a = aNumber() } funcao logico aNumber () { retorne verdadeiro } }`; localStorage.setItem('ivprog.lang', 'pt'); const lexer = LanguageService.getCurrentLexer(); it(`should type check`, function () { const parser = new IVProgParser(code, lexer); const sem = new SemanticAnalyser(parser.parseTree()); const fun = sem.analyseTree.bind(sem); expect(fun).toThrow(); }); });