Skip to content

Commit

Permalink
Teste unitário para iltrarPor.
Browse files Browse the repository at this point in the history
  • Loading branch information
leonelsanchesdasilva committed Feb 29, 2024
1 parent 55affbf commit ded2632
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions testes/primitivas/primitivas-vetor.test.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
import primitivasVetor from '../../fontes/bibliotecas/primitivas-vetor';
import { Binario, FuncaoConstruto, Literal, Logico, Variavel } from '../../fontes/construtos';
import { Retorna } from '../../fontes/declaracoes';
import { DeleguaFuncao } from '../../fontes/estruturas';
import { InterpretadorBase } from '../../fontes/interpretador';
import { Simbolo } from '../../fontes/lexador';
import tiposDeSimbolos from '../../fontes/tipos-de-simbolos/delegua';

describe('Primitivas de vetor', () => {
let interpretador: InterpretadorBase;
Expand Down Expand Up @@ -32,6 +37,48 @@ describe('Primitivas de vetor', () => {
});
});

describe('filtrarPor()', () => {
it('Trivial', async () => {
const deleguaFuncao = new DeleguaFuncao(
'qualquernome',
new FuncaoConstruto(
-1,
-1,
[{
abrangencia: 'padrao',
nome: new Simbolo(tiposDeSimbolos.IDENTIFICADOR, 'valor', null, -1, -1)
}],
[
new Retorna(
new Simbolo(tiposDeSimbolos.RETORNA, 'retorna', null, -1, -1),
new Logico(-1,
new Binario(
-1,
new Variavel(-1,
new Simbolo(tiposDeSimbolos.IDENTIFICADOR, 'valor', null, -1, -1)
),
new Simbolo(tiposDeSimbolos.IGUAL_IGUAL, '==', null, -1, -1),
new Literal(-1, -1, 'verdadeiro'),
),
new Simbolo(tiposDeSimbolos.OU, 'ou', null, -1, -1),
new Binario(
-1,
new Variavel(-1,
new Simbolo(tiposDeSimbolos.IDENTIFICADOR, 'valor', null, -1, -1)
),
new Simbolo(tiposDeSimbolos.IGUAL_IGUAL, '==', null, -1, -1),
new Literal(-1, -1, true),
)
)
)
]
)
);
const resultado = await primitivasVetor.filtrarPor(interpretador, [1, 2, 3, 4, 5], deleguaFuncao);
expect(resultado).toStrictEqual([2, 3]);
});
});

describe('inclui()', () => {
it('Trivial', async () => {
const resultado = await primitivasVetor.inclui(interpretador, [1, 2, 3], 3);
Expand Down

0 comments on commit ded2632

Please sign in to comment.