Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Usando novos pacotes de dialetos, que deixarão de fazer parte do núcleo de Delégua + ajustes. #36

Merged
merged 7 commits into from
Feb 11, 2024
16 changes: 9 additions & 7 deletions fontes/nucleo-execucao.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import * as caminho from "path";

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-delegua

Cannot find module '@designliquido/portugol-studio/fontes/lexador' or its corresponding type declarations.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-delegua

Cannot find module '@designliquido/portugol-studio/fontes/avaliador-sintatico' or its corresponding type declarations.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-delegua

Cannot find module '@designliquido/portugol-studio/fontes/interpretador' or its corresponding type declarations.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-delegua

File '/home/runner/work/delegua-node/delegua-node/node_modules/@designliquido/visualg/fontes/interpretador/index.d.ts' is not a module.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-egua-classico

Cannot find module '@designliquido/portugol-studio/fontes/lexador' or its corresponding type declarations.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-egua-classico

Cannot find module '@designliquido/portugol-studio/fontes/avaliador-sintatico' or its corresponding type declarations.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-egua-classico

Cannot find module '@designliquido/portugol-studio/fontes/interpretador' or its corresponding type declarations.

Check failure on line 1 in fontes/nucleo-execucao.ts

View workflow job for this annotation

GitHub Actions / testes-egua-classico

File '/home/runner/work/delegua-node/delegua-node/node_modules/@designliquido/visualg/fontes/interpretador/index.d.ts' is not a module.
import * as readline from "readline";

import chalk from "chalk";
Expand Down Expand Up @@ -26,18 +26,13 @@
AvaliadorSintaticoPitugues,
AvaliadorSintaticoMapler,
AvaliadorSintaticoPortugolIpt,
AvaliadorSintaticoPortugolStudio,
AvaliadorSintaticoVisuAlg,
AvaliadorSintaticoPotigol,
} from "@designliquido/delegua/fontes/avaliador-sintatico/dialetos";
import {
InterpretadorBirl,
InterpretadorEguaClassico,
InterpretadorMapler,
InterpretadorPortugolIpt,
InterpretadorPortugolStudioComDepuracao,
InterpretadorPortugolStudio,
InterpretadorVisuAlg,
InterpretadorPotigol,
} from "@designliquido/delegua/fontes/interpretador/dialetos";
import { InterpretadorPotigolComDepuracao } from '@designliquido/delegua/fontes/interpretador/dialetos/potigol/interpretador-potigol-com-depuracao';
Expand All @@ -48,10 +43,17 @@
LexadorPitugues,
LexadorMapler,
LexadorPortugolIpt,
LexadorPortugolStudio,
LexadorVisuAlg,
LexadorPotigol,
} from "@designliquido/delegua/fontes/lexador/dialetos";

import { LexadorPortugolStudio } from "@designliquido/portugol-studio/fontes/lexador";
import { AvaliadorSintaticoPortugolStudio } from '@designliquido/portugol-studio/fontes/avaliador-sintatico';
import { InterpretadorPortugolStudio, InterpretadorPortugolStudioComDepuracao } from '@designliquido/portugol-studio/fontes/interpretador';

import { LexadorVisuAlg } from '@designliquido/visualg/fontes/lexador';
import { AvaliadorSintaticoVisuAlg } from '@designliquido/visualg/fontes/avaliador-sintatico';
import { InterpretadorVisuAlg } from '@designliquido/visualg/fontes/interpretador';

import { Interpretador } from "./interpretador";
import { InterpretadorMaplerComDepuracaoImportacao } from "./interpretador/dialetos/interpretador-mapler-com-depuracao-importacao";
import { InterpretadorVisuAlgComDepuracaoImportacao } from "./interpretador/dialetos/interpretador-visualg-com-depuracao-importacao";
Expand Down
7 changes: 4 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"version": "0.32.2",
"description": "Linguagem Delégua com capacidades para ecossistema Node.js.",
"scripts": {
"empacotar": "rimraf ./dist && tsc && copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && copyfiles -V ./package.json ./dist/bin && copyfiles -V ./README.md ./dist && copyfiles -V ./LICENSE ./dist",
"empacotar": "yarn rimraf ./dist && tsc && yarn copyfiles -V ./bin/delegua ./bin/delegua.cmd ./dist && yarn copyfiles -V ./package.json ./dist/bin && yarn copyfiles -V ./README.md ./dist && yarn copyfiles -V ./LICENSE ./dist",
"testes-unitarios": "jest --coverage",
"testes:egua": "./bin/delegua-ts exemplos/dialetos/egua-classico/testes.egua",
"testes:delegua:bhaskara": "./bin/delegua-ts exemplos/dialetos/egua-classico/bhaskara.egua",
Expand All @@ -13,10 +13,11 @@
},
"dependencies": {
"@designliquido/delegua": "0.32.2",
"@designliquido/portugol-studio": "^0.0.0",
"@designliquido/visualg": "^0.0.0",
"chalk": "4.1.2",
"commander": "^9.4.1",
"json-colorizer": "^2.2.2",
"lodash.clonedeep": "^4.5.0"
"json-colorizer": "^2.2.2"
},
"devDependencies": {
"@designliquido/delegua-estatistica": "^0.0.5",
Expand Down
9 changes: 9 additions & 0 deletions testes/nucleo-execucao.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,13 @@ describe('Núcleo de execução', () => {
const funcaoDeRetorno = (saida: string) => retornoSaida += saida;
const nucleoExecucao = new NucleoExecucao('0.1', funcaoDeRetorno);
nucleoExecucao.configurarDialeto();

const realProcess = process;
const exitMock = jest.fn();

// Mock de `process.exit`.
// Se não for feito, o teste falha.
global.process = { ...realProcess, exit: exitMock as any };

// Aqui vamos simular a resposta para duas variáveis de `leia()`.
const respostas = [
Expand All @@ -35,6 +42,8 @@ describe('Núcleo de execução', () => {
};
await nucleoExecucao.carregarEExecutarArquivo('./exemplos/condicionais/escolha-com-enquanto.delegua');

expect(exitMock).toHaveBeenCalledWith(0);
expect(retornoSaida.length).toBeGreaterThan(0);
global.process = realProcess;
});
});
17 changes: 16 additions & 1 deletion yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -337,7 +337,7 @@
resolved "https://registry.yarnpkg.com/@designliquido/delegua-tempo/-/delegua-tempo-0.0.1.tgz#964834d127354857cda1c388f5de9327735b6747"
integrity sha512-/O1/eXlTXPTWSZGZ862i6uHHKCW0cmP6KnOV29zK4d4hgn03QjcNDeFKVC9L9vz3OJ6pPY0d/S8ANJkgBnnoaQ==

"@designliquido/[email protected]":
"@designliquido/[email protected]", "@designliquido/delegua@^0.32.2":
version "0.32.2"
resolved "https://registry.yarnpkg.com/@designliquido/delegua/-/delegua-0.32.2.tgz#97dbffc39b17fd280ada32e141da7547a80edbfa"
integrity sha512-2iEW78j+SMt57uvDeC366RuDcOWkmU2wQ1lMhbGvF8JnbrjK4vijXk/aEHtsr03M0wGnjUERoGx4l/jCWmedFA==
Expand All @@ -347,6 +347,21 @@
esprima "^4.0.1"
lodash.clonedeep "^4.5.0"

"@designliquido/portugol-studio@^0.0.0":
version "0.0.0"
resolved "https://registry.yarnpkg.com/@designliquido/portugol-studio/-/portugol-studio-0.0.0.tgz#cf40e6f0c2837b32e35e84332211b5c56073ccc7"
integrity sha512-al4IR4HZRw5q9Ujsf6B6I+3Sy3G2jEhYCeli90iZKfxq7meNBmwqXiUvWdrX1RpM6scwWDO1UDVHTlASYyan9g==
dependencies:
"@designliquido/delegua" "^0.32.2"

"@designliquido/visualg@^0.0.0":
version "0.0.0"
resolved "https://registry.yarnpkg.com/@designliquido/visualg/-/visualg-0.0.0.tgz#26b7331848e79c32b44a4bf2a9175d768efaaea8"
integrity sha512-paRPLUKz1EsuSBf0ipt9K/+kUbWgMf2GvPkFV2FsYT0OwOTi+77ivGGMP8sCs+AKEv9r3WM0QemOLyFk5FL/kg==
dependencies:
"@designliquido/delegua" "^0.32.2"
lodash.clonedeep "^4.5.0"

"@iarna/[email protected]":
version "2.2.5"
resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c"
Expand Down
Loading