29 lines
1,016 B
TypeScript
29 lines
1,016 B
TypeScript
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)
|
|
})
|
|
})
|