test50.spec.js 757 B

12345678910111213141516171819202122232425
  1. import { IVProgParser } from './../js/ast/ivprogParser';
  2. import { SemanticAnalyser } from './../js/processor/semantic/semanticAnalyser';
  3. import { LanguageService } from '../js/services/languageService';
  4. describe('The semantic analyser', function () {
  5. const code = `programa {
  6. funcao inicio() {
  7. inteiro a[5] = {1, 2, 3, 4, 0xff}
  8. escreva(a[6])
  9. }
  10. }`;
  11. localStorage.setItem('ivprog.lang', 'pt');
  12. const lexer = LanguageService.getCurrentLexer();
  13. it(`should not check when accessing a vector/matrix for size, only types`, function () {
  14. const parser = new IVProgParser(code, lexer);
  15. const sem = new SemanticAnalyser(parser.parseTree());
  16. const fun = sem.analyseTree.bind(sem);
  17. expect(fun).not.toThrow();
  18. });
  19. });