Skip to content

Commit

Permalink
Se agrego el valor 'M ' faltante a const comunes
Browse files Browse the repository at this point in the history
  • Loading branch information
dasito26 committed Nov 28, 2023
1 parent b1acd18 commit 321f672
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 5 deletions.
11 changes: 11 additions & 0 deletions lib/__tests__/curp.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -298,6 +298,17 @@ describe('curp', () => {
expect(curp.generar(persona)).toBe('PEHE771120MVZRXD09');
});

it('Deberia obtener el CURP correcto de la persona M CRISTINA QUIAHUA CALIHUA', () => {
const persona = curp.getPersona();
persona.nombre = 'M CRISTINA';
persona.apellidoPaterno = 'QUIAHUA';
persona.apellidoMaterno = 'CALIHUA';
persona.genero = curp.GENERO.FEMENINO;
persona.fechaNacimiento = '19-09-1981';
persona.estado = curp.ESTADO.VERACRUZ;
expect(curp.generar(persona)).toBe('QUCC810919MVZHLR01');
});

function curpSinNombre() {
const persona = curp.getPersona();
persona.apellidoPaterno = 'Sanchez';
Expand Down
11 changes: 6 additions & 5 deletions lib/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ const comunes = [
'M. ',
'J. ',
'J ',
'M ',
];

const malasPalabras = {
Expand Down Expand Up @@ -150,7 +151,7 @@ class Persona {
apellidoMaterno,
genero,
estado,
fechaNacimiento,
fechaNacimiento
) {
this.nombre = nombre;
this.apellidoPaterno = apellidoPaterno;
Expand All @@ -171,16 +172,16 @@ function generar(persona) {
const pad = zeropad.bind(null, 2);

const nombre = ajustaCompuesto(
normalizaString(persona.nombre.toUpperCase()),
normalizaString(persona.nombre.toUpperCase())
).trim();

const apellidoPaterno = ajustaCompuesto(
normalizaString(persona.apellidoPaterno.toUpperCase()),
normalizaString(persona.apellidoPaterno.toUpperCase())
).trim();

let apellidoMaterno = persona.apellidoMaterno || '';
apellidoMaterno = ajustaCompuesto(
normalizaString(apellidoMaterno.toUpperCase()),
normalizaString(apellidoMaterno.toUpperCase())
).trim();

const nombreUsar = obtenerNombreUsar(nombre);
Expand Down Expand Up @@ -460,7 +461,7 @@ function obtenerNombreUsar(nombre) {
if (nombres.length === 1) return nombres[0];

const esNombreComun = comunes.some(
(nombreComun) => nombre.indexOf(nombreComun) === 0,
(nombreComun) => nombre.indexOf(nombreComun) === 0
);

if (esNombreComun) return nombres[1];
Expand Down

0 comments on commit 321f672

Please sign in to comment.