From 253a3f5395254fb077172ab5d135ed583f6db264 Mon Sep 17 00:00:00 2001 From: enlineawork Date: Sat, 5 Sep 2026 17:07:52 -0300 Subject: [PATCH] test: cubre briefing de campo F1.3 --- .../unit/phase-f1-3-field-briefing.test.ts | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 api-v3/test/unit/phase-f1-3-field-briefing.test.ts diff --git a/api-v3/test/unit/phase-f1-3-field-briefing.test.ts b/api-v3/test/unit/phase-f1-3-field-briefing.test.ts new file mode 100644 index 0000000..6727542 --- /dev/null +++ b/api-v3/test/unit/phase-f1-3-field-briefing.test.ts @@ -0,0 +1,30 @@ +import assert from 'node:assert/strict'; +import { readFileSync } from 'node:fs'; +import { test } from 'node:test'; + +const service = readFileSync('src/act-administration/field-briefing.service.ts', 'utf8'); +const controller = readFileSync('src/act-administration/field-briefing.controller.ts', 'utf8'); +const moduleSource = readFileSync('src/act-administration/act-administration.module.ts', 'utf8'); + +test('F1.3 agrupa pendientes de campo por Acta y Hallazgo', () => { + assert.match(service, /inspection_act_deadline_events/); + assert.match(service, /inspection_act_company_responses/); + assert.match(service, /source_visit\.operational_area_id = \$2::uuid/); + assert.match(service, /source_visit\.operator_company_id = \$3::uuid/); + assert.match(service, /ACT_RESPONSE_OVERDUE/); + assert.match(service, /COMPANY_COMMITMENT_OVERDUE/); + assert.match(service, /VERIFICATION_PENDING/); + assert.match(service, /findings: \[\]/); +}); + +test('F1.3 expone el briefing para una inspección planificada', () => { + assert.match(controller, /inspection-visits\/:visitId\/field-briefing/); + assert.match(controller, /RequirePermissions\('inspections\.read'\)/); + assert.match(moduleSource, /FieldBriefingController/); + assert.match(moduleSource, /FieldBriefingService/); +}); + +test('F1.3 no usa el plazo del Hallazgo como plazo administrativo', () => { + assert.doesNotMatch(service, /correction_due_on/); + assert.match(service, /deadline\.response_due_on/); +});