adicionado testes de rotas e alrerado padroes

This commit is contained in:
Luiz Silva 2025-09-08 14:57:27 -03:00
parent 7e7cf8e7df
commit f2eea9962b
8 changed files with 460 additions and 15 deletions

View file

@ -0,0 +1,29 @@
import { describe, expect, it } from "vitest"
import { TipagemRotas } from "../tipagemRotas"
describe("TipagemRotas", () => {
it("deve montar _partesCaminho a partir de string ou array, normalizando barras", () => {
const r1 = new TipagemRotas<{ q: string }>({ caminho: "aplicacao/func" })
expect(r1.caminho).toBe("/aplicacao/func")
const r2 = new TipagemRotas<{ q: string }>({
caminho: ["aplicacao", "func"],
})
expect(r2.caminho).toBe("/aplicacao/func")
const r3 = new TipagemRotas<{ q: string }>({ caminho: "/a//b///c/" })
expect(r3.caminho).toBe("/a/b/c")
})
it("Valores de entrada com mesmo valor dos valores de saída", () => {
type tipagem = { nome: string; idade: number }
const r1 = new TipagemRotas<tipagem>({ caminho: "aplicacao/func" })
const objetoEntrada: tipagem = { idade: 21, nome: "João" }
const rota = r1.endereco(objetoEntrada)
const parametros = r1.parametros(rota)
expect(parametros.nome).toBe(objetoEntrada.nome)
})
})