test16.spec.js 780 B

1234567891011121314151617181920212223242526272829303132333435
  1. import {
  2. IVProgParser
  3. } from './../js/ast/ivprogParser';
  4. import { LanguageService } from '../js/services/languageService';
  5. describe('Variable declaration inside a function', () => {
  6. let input = `programa {
  7. const real PI = 5.5
  8. inteiro V = -10*2
  9. funcao inicio() {
  10. inteiro a = 6
  11. test(PI)
  12. retorne
  13. }
  14. funcao inteiro test(real i) {
  15. escolha (i) {
  16. caso 1:
  17. retorne 0
  18. caso contrario:
  19. retorne 4
  20. }
  21. }
  22. }`;
  23. const lexer = LanguageService.getCurrentLexer();
  24. it(`should not result in SyntaxError`, () => {
  25. const as = new IVProgParser(input, lexer);
  26. const fun = as.parseTree.bind(as);
  27. expect(fun).not.toThrow();
  28. });
  29. });