From e6c4d6b8471392c4c12d37ee67fba27a4cbec59e Mon Sep 17 00:00:00 2001 From: Adrian Flores Cortes Date: Tue, 3 Feb 2026 08:12:35 -0600 Subject: [PATCH] [SYNC] chore: Add jest config and update carta-porte services - Add jest.config.js for testing - Update figura-transporte DTO - Update services index exports Co-Authored-By: Claude Opus 4.5 --- jest.config.js | 30 +++++++++++++++++++ .../carta-porte/dto/figura-transporte.dto.ts | 8 ++--- src/modules/carta-porte/services/index.ts | 6 ++-- 3 files changed, 36 insertions(+), 8 deletions(-) create mode 100644 jest.config.js diff --git a/jest.config.js b/jest.config.js new file mode 100644 index 0000000..d0fd276 --- /dev/null +++ b/jest.config.js @@ -0,0 +1,30 @@ +/** @type {import('ts-jest').JestConfigWithTsJest} */ +module.exports = { + preset: 'ts-jest', + testEnvironment: 'node', + roots: ['/src'], + testMatch: [ + '**/__tests__/**/*.+(ts|tsx|js)', + '**/?(*.)+(spec|test).+(ts|tsx|js)' + ], + transform: { + '^.+\\.(ts|tsx)$': ['ts-jest', { + useESM: false, + tsconfig: 'tsconfig.json', + }], + }, + moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], + moduleNameMapper: { + '^(\\.{1,2}/.*)\\.js$': '$1', + }, + collectCoverageFrom: [ + 'src/**/*.{ts,tsx}', + '!src/**/*.d.ts', + '!src/**/__tests__/**', + ], + coverageDirectory: 'coverage', + verbose: true, + testTimeout: 30000, + clearMocks: true, + restoreMocks: true, +}; diff --git a/src/modules/carta-porte/dto/figura-transporte.dto.ts b/src/modules/carta-porte/dto/figura-transporte.dto.ts index 84cafaf..f441df4 100644 --- a/src/modules/carta-porte/dto/figura-transporte.dto.ts +++ b/src/modules/carta-porte/dto/figura-transporte.dto.ts @@ -9,7 +9,7 @@ import { Matches, } from 'class-validator'; import { Type } from 'class-transformer'; -import { TipoFiguraTransporte } from '../entities'; +import { TipoFigura } from '../entities'; /** * DTO para partes de transporte (propietario/arrendador) @@ -76,15 +76,15 @@ export class DomicilioFiguraDto { */ export class CreateFiguraTransporteDto { /** - * Tipo de figura de transporte (catalogo c_TipoFiguraTransporte) + * Tipo de figura de transporte (catalogo c_TipoFigura) * 01 = Operador * 02 = Propietario * 03 = Arrendador * 04 = Notificado */ - @IsEnum(TipoFiguraTransporte, { message: 'tipoFigura debe ser 01, 02, 03 o 04' }) + @IsEnum(TipoFigura, { message: 'tipoFigura debe ser 01, 02, 03 o 04' }) @IsNotEmpty() - tipoFigura!: TipoFiguraTransporte; + tipoFigura!: TipoFigura; /** * RFC de la figura (opcional para operadores extranjeros) diff --git a/src/modules/carta-porte/services/index.ts b/src/modules/carta-porte/services/index.ts index 641fffe..1dd6574 100644 --- a/src/modules/carta-porte/services/index.ts +++ b/src/modules/carta-porte/services/index.ts @@ -18,7 +18,5 @@ export * from './figura-transporte.service'; // Inspeccion Pre-Viaje (Pre-trip Inspection) Service export * from './inspeccion-pre-viaje.service'; -// TODO: Implement additional services -// - carta-porte-validator.service.ts (validacion SAT detallada) -// - pac-integration.service.ts (integracion con PAC) -// - cfdi-generator.service.ts (generacion XML CFDI) +// XML Generator Service (CFDI + Carta Porte 3.1) +export * from './carta-porte-xml.service';