refactor: rename remaining recipient references to person/people
This commit is contained in:
@@ -13,7 +13,7 @@ const actionCopy = {
|
||||
assignmentAlreadyReturned: "La asignación ya fue devuelta",
|
||||
previousItemNotFound: "Artículo anterior no encontrado",
|
||||
insufficientStock: "El artículo no tiene stock suficiente",
|
||||
recipientRequired: "El destinatario es obligatorio",
|
||||
personRequired: "La persona es obligatoria",
|
||||
invalidStatus: "Estado inválido",
|
||||
genericFailure: "Error al procesar el activo",
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ import { es } from "@/i18n/dictionaries/es"
|
||||
|
||||
const mocks = vi.hoisted(() => ({
|
||||
getI18n: vi.fn(),
|
||||
findAllRecipients: vi.fn(),
|
||||
findAllPeople: vi.fn(),
|
||||
findAllItemsWithStock: vi.fn(),
|
||||
findAllAvailableAssets: vi.fn(),
|
||||
findAllItems: vi.fn(),
|
||||
@@ -25,7 +25,7 @@ vi.mock("@/i18n/server", () => ({
|
||||
|
||||
vi.mock("@/services/person.service", () => ({
|
||||
PersonService: {
|
||||
findAll: mocks.findAllRecipients,
|
||||
findAll: mocks.findAllPeople,
|
||||
},
|
||||
}))
|
||||
|
||||
@@ -72,9 +72,9 @@ describe("assignment form pages localization", () => {
|
||||
beforeEach(() => {
|
||||
vi.clearAllMocks()
|
||||
mocks.getI18n.mockResolvedValue({ dictionary: es, locale: "es" })
|
||||
mocks.findAllRecipients.mockResolvedValue([
|
||||
mocks.findAllPeople.mockResolvedValue([
|
||||
{
|
||||
id: "recipient-1",
|
||||
id: "person-1",
|
||||
firstName: "Ada",
|
||||
lastName: "Lovelace",
|
||||
},
|
||||
@@ -122,10 +122,8 @@ describe("assignment form pages localization", () => {
|
||||
const html = renderToStaticMarkup(await NewAssignmentPage())
|
||||
|
||||
expect(html).toContain("Nueva asignación")
|
||||
expect(html).toContain("Destinatario")
|
||||
expect(html).toContain(
|
||||
'option value="">Selecciona un destinatario</option>',
|
||||
)
|
||||
expect(html).toContain("Persona")
|
||||
expect(html).toContain('option value="">Selecciona una persona</option>')
|
||||
expect(html).toContain("Artículo")
|
||||
expect(html).toContain('option value="">Selecciona un artículo</option>')
|
||||
expect(html).toContain("Cantidad")
|
||||
@@ -142,7 +140,7 @@ describe("assignment form pages localization", () => {
|
||||
|
||||
mocks.findAssignmentById.mockResolvedValue({
|
||||
id: "assignment-1",
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
itemId: "item-1",
|
||||
assetId: "asset-1",
|
||||
quantity: 1,
|
||||
@@ -155,7 +153,7 @@ describe("assignment form pages localization", () => {
|
||||
)
|
||||
|
||||
expect(html).toContain("Editar asignación")
|
||||
expect(html).toContain("Destinatario")
|
||||
expect(html).toContain("Persona")
|
||||
expect(html).toContain("Artículo")
|
||||
expect(html).toContain("Activo")
|
||||
expect(html).toContain('option value="">Selecciona un activo</option>')
|
||||
|
||||
@@ -5,7 +5,7 @@ import { beforeEach, describe, expect, it, vi } from "vitest"
|
||||
import { es } from "@/i18n/dictionaries/es"
|
||||
|
||||
const mocks = vi.hoisted(() => ({
|
||||
findAllWithRecipientPaginated: vi.fn(),
|
||||
findAllWithPersonPaginated: vi.fn(),
|
||||
getI18n: vi.fn(),
|
||||
refresh: vi.fn(),
|
||||
returnAssignment: vi.fn(),
|
||||
@@ -19,7 +19,7 @@ vi.mock("@/i18n/server", () => ({
|
||||
|
||||
vi.mock("@/services/assignment.service", () => ({
|
||||
AssignmentService: {
|
||||
findAllWithRecipientPaginated: mocks.findAllWithRecipientPaginated,
|
||||
findAllWithPersonPaginated: mocks.findAllWithPersonPaginated,
|
||||
},
|
||||
}))
|
||||
|
||||
@@ -65,13 +65,13 @@ describe("assignment pages localization", () => {
|
||||
"@/app/(dashboard)/assignments/page"
|
||||
)
|
||||
|
||||
mocks.findAllWithRecipientPaginated.mockResolvedValue({
|
||||
mocks.findAllWithPersonPaginated.mockResolvedValue({
|
||||
data: [
|
||||
{
|
||||
id: "assignment-1",
|
||||
quantity: 2,
|
||||
recipient: {
|
||||
id: "recipient-1",
|
||||
person: {
|
||||
id: "person-1",
|
||||
firstName: "Ada",
|
||||
lastName: "Lovelace",
|
||||
},
|
||||
@@ -93,7 +93,7 @@ describe("assignment pages localization", () => {
|
||||
|
||||
expect(html).toContain("Asignaciones")
|
||||
expect(html).toContain("Agregar asignación")
|
||||
expect(html).toContain("Destinatario")
|
||||
expect(html).toContain("Persona")
|
||||
expect(html).toContain("Artículo")
|
||||
expect(html).toContain("Número de serie")
|
||||
expect(html).toContain("Cantidad")
|
||||
@@ -110,7 +110,7 @@ describe("assignment pages localization", () => {
|
||||
"@/app/(dashboard)/assignments/page"
|
||||
)
|
||||
|
||||
mocks.findAllWithRecipientPaginated.mockResolvedValue({
|
||||
mocks.findAllWithPersonPaginated.mockResolvedValue({
|
||||
data: [],
|
||||
totalPages: 0,
|
||||
})
|
||||
|
||||
@@ -68,7 +68,7 @@ describe("movement pages localization", () => {
|
||||
createdAt: new Date("2026-06-13T00:00:00.000Z"),
|
||||
item: { name: "Laptop" },
|
||||
asset: { serialNumber: "SN-001" },
|
||||
recipient: { firstName: "Ada", lastName: "Lovelace" },
|
||||
person: { firstName: "Ada", lastName: "Lovelace" },
|
||||
},
|
||||
],
|
||||
totalPages: 1,
|
||||
@@ -83,7 +83,7 @@ describe("movement pages localization", () => {
|
||||
expect(html).toContain("Artículo")
|
||||
expect(html).toContain("Número de serie")
|
||||
expect(html).toContain("Cantidad")
|
||||
expect(html).toContain("Destinatario")
|
||||
expect(html).toContain("Persona")
|
||||
expect(html).toContain("Fecha")
|
||||
expect(html).toContain("Asignación")
|
||||
expect(html).toContain("Laptop")
|
||||
|
||||
@@ -415,7 +415,7 @@ describe("i18n dictionaries", () => {
|
||||
addLabel: "Add Assignment",
|
||||
empty: "No assignments found.",
|
||||
columns: {
|
||||
recipient: "Recipient",
|
||||
person: "Person",
|
||||
item: "Item",
|
||||
serialNumber: "Serial Number",
|
||||
quantity: "Quantity",
|
||||
@@ -434,8 +434,8 @@ describe("i18n dictionaries", () => {
|
||||
notFound: "Assignment not found",
|
||||
},
|
||||
form: {
|
||||
recipientLabel: "Recipient",
|
||||
recipientPlaceholder: "Select a recipient",
|
||||
personLabel: "Person",
|
||||
personPlaceholder: "Select a person",
|
||||
itemLabel: "Item",
|
||||
itemPlaceholder: "Select an item",
|
||||
assetLabel: "Asset",
|
||||
@@ -465,7 +465,7 @@ describe("i18n dictionaries", () => {
|
||||
genericFailure: "Error processing assignment",
|
||||
},
|
||||
schema: {
|
||||
recipientRequired: "Recipient is required",
|
||||
personRequired: "Person is required",
|
||||
itemIdRequired: "Item is required",
|
||||
quantityMinOne: "Quantity must be at least 1",
|
||||
assetIdRequired: "Asset ID is required when item ID is provided",
|
||||
@@ -479,7 +479,7 @@ describe("i18n dictionaries", () => {
|
||||
addLabel: "Agregar asignación",
|
||||
empty: "No se encontraron asignaciones.",
|
||||
columns: {
|
||||
recipient: "Destinatario",
|
||||
person: "Persona",
|
||||
item: "Artículo",
|
||||
serialNumber: "Número de serie",
|
||||
quantity: "Cantidad",
|
||||
@@ -498,8 +498,8 @@ describe("i18n dictionaries", () => {
|
||||
notFound: "Asignación no encontrada",
|
||||
},
|
||||
form: {
|
||||
recipientLabel: "Destinatario",
|
||||
recipientPlaceholder: "Selecciona un destinatario",
|
||||
personLabel: "Persona",
|
||||
personPlaceholder: "Selecciona una persona",
|
||||
itemLabel: "Artículo",
|
||||
itemPlaceholder: "Selecciona un artículo",
|
||||
assetLabel: "Activo",
|
||||
@@ -529,7 +529,7 @@ describe("i18n dictionaries", () => {
|
||||
genericFailure: "Error al procesar la asignación",
|
||||
},
|
||||
schema: {
|
||||
recipientRequired: "El destinatario es obligatorio",
|
||||
personRequired: "La persona es obligatoria",
|
||||
itemIdRequired: "El artículo es obligatorio",
|
||||
quantityMinOne: "La cantidad debe ser al menos 1",
|
||||
assetIdRequired:
|
||||
@@ -572,8 +572,8 @@ describe("i18n dictionaries", () => {
|
||||
deliveryNotePlaceholder: "Delivery note",
|
||||
statusLabel: "Status",
|
||||
statusPlaceholder: "Select a status",
|
||||
recipientLabel: "Recipient",
|
||||
recipientPlaceholder: "Select a recipient",
|
||||
personLabel: "Person",
|
||||
personPlaceholder: "Select a person",
|
||||
createSubmit: "Create Asset",
|
||||
updateSubmit: "Update Asset",
|
||||
},
|
||||
@@ -600,7 +600,7 @@ describe("i18n dictionaries", () => {
|
||||
assignmentAlreadyReturned: "Assignment already returned",
|
||||
previousItemNotFound: "Previous item not found for available asset",
|
||||
insufficientStock: "Item does not have enough stock",
|
||||
recipientRequired: "Recipient is required",
|
||||
personRequired: "Person is required",
|
||||
invalidStatus: "Invalid status",
|
||||
genericFailure: "Error processing asset",
|
||||
},
|
||||
@@ -646,8 +646,8 @@ describe("i18n dictionaries", () => {
|
||||
deliveryNotePlaceholder: "Remito",
|
||||
statusLabel: "Estado",
|
||||
statusPlaceholder: "Selecciona un estado",
|
||||
recipientLabel: "Destinatario",
|
||||
recipientPlaceholder: "Selecciona un destinatario",
|
||||
personLabel: "Persona",
|
||||
personPlaceholder: "Selecciona una persona",
|
||||
createSubmit: "Crear activo",
|
||||
updateSubmit: "Actualizar activo",
|
||||
},
|
||||
@@ -675,7 +675,7 @@ describe("i18n dictionaries", () => {
|
||||
previousItemNotFound:
|
||||
"Artículo anterior no encontrado para el activo disponible",
|
||||
insufficientStock: "El artículo no tiene stock suficiente",
|
||||
recipientRequired: "El destinatario es obligatorio",
|
||||
personRequired: "La persona es obligatoria",
|
||||
invalidStatus: "Estado inválido",
|
||||
genericFailure: "Error al procesar el activo",
|
||||
},
|
||||
@@ -865,7 +865,7 @@ describe("i18n dictionaries", () => {
|
||||
item: "Item",
|
||||
serialNumber: "Serial Number",
|
||||
quantity: "Quantity",
|
||||
recipient: "Recipient",
|
||||
person: "Person",
|
||||
date: "Date",
|
||||
},
|
||||
},
|
||||
@@ -899,7 +899,7 @@ describe("i18n dictionaries", () => {
|
||||
item: "Artículo",
|
||||
serialNumber: "Número de serie",
|
||||
quantity: "Cantidad",
|
||||
recipient: "Destinatario",
|
||||
person: "Persona",
|
||||
date: "Fecha",
|
||||
},
|
||||
},
|
||||
|
||||
@@ -54,7 +54,7 @@ describe("asset schema localization", () => {
|
||||
itemId: "item-1",
|
||||
serialNumber: "SERIAL-1",
|
||||
status: "ASSIGNED",
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
})
|
||||
|
||||
expect(createResult.success).toBe(true)
|
||||
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
} from "@/schemas/assignment.schema"
|
||||
|
||||
const schemaCopy = {
|
||||
recipientRequired: "El destinatario es obligatorio",
|
||||
personRequired: "La persona es obligatoria",
|
||||
itemIdRequired: "El artículo es obligatorio",
|
||||
quantityMinOne: "La cantidad debe ser al menos 1",
|
||||
assetIdRequired: "El activo es obligatorio cuando se especifica el artículo",
|
||||
@@ -16,7 +16,7 @@ const schemaCopy = {
|
||||
describe("assignment schema localization", () => {
|
||||
it("uses localized create validation messages for missing required fields", () => {
|
||||
const result = buildCreateAssignmentSchema(schemaCopy).safeParse({
|
||||
recipientId: "",
|
||||
personId: "",
|
||||
quantity: 0,
|
||||
})
|
||||
|
||||
@@ -24,7 +24,7 @@ describe("assignment schema localization", () => {
|
||||
if (!result.success) {
|
||||
const errors = result.error.flatten().fieldErrors
|
||||
|
||||
expect(errors.recipientId).toContain(schemaCopy.recipientRequired)
|
||||
expect(errors.personId).toContain(schemaCopy.personRequired)
|
||||
expect(errors.quantity).toContain(schemaCopy.quantityMinOne)
|
||||
}
|
||||
})
|
||||
@@ -33,7 +33,7 @@ describe("assignment schema localization", () => {
|
||||
const result = buildUpdateAssignmentSchema(schemaCopy).safeParse({
|
||||
id: "",
|
||||
itemId: "item-1",
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
quantity: 1,
|
||||
assetId: "",
|
||||
})
|
||||
@@ -49,20 +49,20 @@ describe("assignment schema localization", () => {
|
||||
|
||||
it("preserves valid create and update payloads without errors", () => {
|
||||
const createResult = buildCreateAssignmentSchema(schemaCopy).safeParse({
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
itemId: "item-1",
|
||||
quantity: 2,
|
||||
})
|
||||
|
||||
expect(createResult.success).toBe(true)
|
||||
if (createResult.success) {
|
||||
expect(createResult.data.recipientId).toBe("recipient-1")
|
||||
expect(createResult.data.personId).toBe("person-1")
|
||||
expect(createResult.data.quantity).toBe(2)
|
||||
}
|
||||
|
||||
const updateResult = buildUpdateAssignmentSchema(schemaCopy).safeParse({
|
||||
id: "assignment-1",
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
itemId: "item-1",
|
||||
assetId: "asset-1",
|
||||
quantity: 1,
|
||||
@@ -76,7 +76,7 @@ describe("assignment schema localization", () => {
|
||||
|
||||
it("keeps optional assignment fields optional in create", () => {
|
||||
const result = buildCreateAssignmentSchema(schemaCopy).safeParse({
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
quantity: 1,
|
||||
})
|
||||
|
||||
@@ -86,7 +86,7 @@ describe("assignment schema localization", () => {
|
||||
it("allows update without itemId when no assetId is required", () => {
|
||||
const result = buildUpdateAssignmentSchema(schemaCopy).safeParse({
|
||||
id: "assignment-1",
|
||||
recipientId: "recipient-1",
|
||||
personId: "person-1",
|
||||
quantity: 1,
|
||||
})
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ describe("core schemas", () => {
|
||||
expect(
|
||||
createAssignmentSchema.safeParse({
|
||||
itemId: "item-id",
|
||||
recipientId: "recipient-id",
|
||||
personId: "person-id",
|
||||
quantity: "2",
|
||||
}),
|
||||
).toMatchObject({ success: true, data: { quantity: 2 } })
|
||||
@@ -47,7 +47,7 @@ describe("core schemas", () => {
|
||||
expect(
|
||||
createAssignmentSchema.safeParse({
|
||||
itemId: "item-id",
|
||||
recipientId: "recipient-id",
|
||||
personId: "person-id",
|
||||
quantity: 0,
|
||||
}).success,
|
||||
).toBe(false)
|
||||
|
||||
Reference in New Issue
Block a user