Files
stock-manager/tests/unit/schemas/category.schema.test.ts
T

39 lines
1.0 KiB
TypeScript

import { describe, expect, it } from "vitest"
import {
buildCreateCategorySchema,
buildUpdateCategorySchema,
} from "@/schemas/category.schema"
const schemaCopy = {
nameRequired: "El nombre es obligatorio y debe tener al menos 3 caracteres",
idRequired: "El ID es obligatorio",
}
describe("category schema localization", () => {
it("uses localized create validation messages", () => {
const result = buildCreateCategorySchema(schemaCopy).safeParse({ name: "" })
expect(result.success).toBe(false)
if (!result.success) {
expect(result.error.flatten().fieldErrors.name).toContain(
schemaCopy.nameRequired,
)
}
})
it("uses localized update identifier validation messages", () => {
const result = buildUpdateCategorySchema(schemaCopy).safeParse({
id: "",
name: "Hardware",
})
expect(result.success).toBe(false)
if (!result.success) {
expect(result.error.flatten().fieldErrors.id).toContain(
schemaCopy.idRequired,
)
}
})
})