test15.spec.js 707 B

123456789101112131415161718192021222324252627282930313233
  1. import Lexers from './../grammar/';
  2. import {
  3. IVProgParser
  4. } from './../js/ast/ivprogParser';
  5. describe('A start function with no return type', () => {
  6. let input = `programa {
  7. const real PI = 5.5
  8. inteiro V = -10*2
  9. funcao inicio() {
  10. test(PI)
  11. retorne
  12. }
  13. funcao inteiro test(real i) {
  14. escolha (i) {
  15. caso 1:
  16. retorne 0
  17. caso contrario:
  18. retorne 4
  19. }
  20. }
  21. }`;
  22. const lexer = Lexers['pt_br'];
  23. it(`should not result in SyntaxError`, () => {
  24. const as = new IVProgParser(input, lexer);
  25. const fun = as.parseTree.bind(as);
  26. expect(fun).not.toThrow();
  27. });
  28. });