Skip to content

Commit

Permalink
Mudança no algoritmo da visão correspondente para considerar tanto di… (
Browse files Browse the repository at this point in the history
#16)

* Mudança no algoritmo da visão correspondente para considerar tanto diretórios quanto arquivos.
* Configuração do jest.config.ts.
* Usando separadores do sistema operacional para evitar erro com teste unitário.
* Favor não usar global teardown. Dá problema com o CI.
  • Loading branch information
leonelsanchesdasilva authored Jan 18, 2023
1 parent dbfcdfa commit 73af40d
Show file tree
Hide file tree
Showing 6 changed files with 36 additions and 20 deletions.
17 changes: 14 additions & 3 deletions infraestrutura/formatadores/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,20 @@ export class FormatadorLmht {
* @returns O resultado das duas conversões.
*/
async formatar(caminhoRota: string, valores: any): Promise<any> {
let visaoCorrespondente = caminho.join(this.diretorioBase, "visoes", caminhoRota, ".lmht");
if (visaoCorrespondente.endsWith(caminho.sep + ".lmht")) {
visaoCorrespondente = visaoCorrespondente.replace(caminho.sep + ".lmht", caminho.sep + "inicial.lmht");
let visaoCorrespondente: string = caminho.join(this.diretorioBase, "visoes", caminhoRota, ".lmht");
const diretorioOuArquivo = caminho.join(this.diretorioBase, "visoes", caminhoRota);
if (sistemaDeArquivos.existsSync(diretorioOuArquivo)) {
// É diretório
if (visaoCorrespondente.endsWith(caminho.sep + ".lmht")) {
visaoCorrespondente = visaoCorrespondente.replace(caminho.sep + ".lmht", caminho.sep + "inicial.lmht");
}
} else if (sistemaDeArquivos.existsSync(diretorioOuArquivo + ".lmht")) {
// É arquivo
visaoCorrespondente = visaoCorrespondente.replace(caminho.sep + ".lmht", ".lmht");
} else {
// Caminho não existe
return Promise.reject(
`Visão correspondente à rota ${caminhoRota} não existe. Caminhos tentados: ${diretorioOuArquivo}, ${diretorioOuArquivo + ".lmht"}`);
}

const arquivoBase: Buffer = sistemaDeArquivos.readFileSync(visaoCorrespondente);
Expand Down
18 changes: 7 additions & 11 deletions jest.config.ts
Original file line number Diff line number Diff line change
@@ -1,20 +1,16 @@
import type { Config } from '@jest/types';
export default async (): Promise<Config.InitialOptions> => {
return {
preset: 'ts-jest',
setupFiles: ['dotenv/config'],
verbose: true,
modulePathIgnorePatterns: ['<rootDir>/dist/'],
preset: 'ts-jest',
testEnvironment: 'node',
coverageReporters: ['json-summary', 'lcov', 'text', 'text-summary'],
displayName: {
name: 'liquido',
color: 'greenBright'
},
verbose: true,
setupFiles: ['dotenv/config'],
testMatch: ['**/**/*.test.ts'],
testEnvironment: 'node',
detectOpenHandles: true,
collectCoverage: true,
transform: { '^.+\\.tsx?$': 'ts-jest' },
globalTeardown: '<rootDir>/testes/jest-globals-teardown.ts',
forceExit: true,
coverageReporters: ['json-summary', 'lcov', 'text', 'text-summary']
};
};
};
3 changes: 3 additions & 0 deletions rotas/mvc/parciais.delegua
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
liquido.rotaGet(funcao(requisicao, resposta) {
resposta.lmht({ "titulo": "Parciais" })
})
3 changes: 0 additions & 3 deletions testes/jest-globals-teardown.ts

This file was deleted.

7 changes: 4 additions & 3 deletions testes/testes-unitarios/liquido.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { Liquido } from '../../liquido';
import * as caminho from 'path';

import { Liquido } from '../../liquido';
import { RetornoMiddleware } from '../../interfaces';

describe('Liquido', () => {
Expand All @@ -14,8 +15,8 @@ describe('Liquido', () => {
const rota1 = liquido.arquivosDelegua[0].split('rotas')[1];
const rota2 = liquido.arquivosDelegua[1].split('rotas')[1];
expect(liquido.arquivosDelegua).toHaveLength(2);
expect(rota1).toBe('\\inicial.delegua');
expect(rota2).toBe('\\mvc\\inicial.delegua');
expect(rota1).toBe(`${caminho.sep}inicial.delegua`);
expect(rota2).toBe(`${caminho.sep}mvc${caminho.sep}inicial.delegua`);
});

it('Testando resolverCaminhoRota()', () => {
Expand Down
8 changes: 8 additions & 0 deletions visoes/mvc/parciais.lmht
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<lmht>
<cabeca>
<titulo>Teste de Parciais</titulo>
</cabeca>
<corpo>
<parcial nome="minha-parcial">
</corpo>
</lmht>

0 comments on commit 73af40d

Please sign in to comment.