UNPKG

oiblib

Version:

Library for validating and generating Croatian permanent national identification number "OIB", it is a number of every Croatian citizen and legal persons domiciled in the Republic of Croatia.

48 lines (39 loc) 1.71 kB
const { validateOIB, validateJMBG } = require('./../src/index'); const { generatePossibleOIB, generatePossibleJMBG } = require('./../src/index'); const assert = require('assert'); describe('Validate OIB and JMBG', function() { it('OIB', function(done) { assert.strictEqual(validateOIB(3), false); assert.strictEqual(validateOIB('00000000001'), true); assert.strictEqual(validateOIB('00000000003'), false); done(); }) it('JMBG', function(done) { assert.strictEqual(validateJMBG(3), false); assert.strictEqual(validateJMBG('0000000000000'), true); assert.strictEqual(validateJMBG('0000000000001'), false); assert.strictEqual(validateJMBG('0000000000002'), false); assert.strictEqual(validateJMBG('0000000000003'), false); assert.strictEqual(validateJMBG('0000000000004'), false); assert.strictEqual(validateJMBG('0000000000005'), false); assert.strictEqual(validateJMBG('0000000000006'), false); assert.strictEqual(validateJMBG('0000000000007'), false); assert.strictEqual(validateJMBG('0000000000008'), false); assert.strictEqual(validateJMBG('0000000000009'), false); done(); }) }); describe('Generate random valid OIB and JMBG', function() { it('Generate OIB', function(done) { const newOIB = generatePossibleOIB(); // console.log(`Generated OIB: ${newOIB}`, validateOIB(newOIB)); assert.strictEqual(validateOIB(newOIB), true); done(); }) it('JMBG', function(done) { const newJMBG = generatePossibleJMBG(); // console.log(`Generated JMBG: ${newJMBG}`, validateJMBG(newJMBG)); assert.strictEqual(validateJMBG(newJMBG), true); done(); }) });