UNPKG

idcard-verify

Version:
258 lines 9.57 kB
var should = require('should'); var idCard = require('../lib/index'); describe('#idCard#', function() { describe('verify()', function() { it('it must be no ok', function() { idCard.verify('440882199102104190').should.be.false(); }); it('it must be ok', function() { idCard.verify('440882199102104195').should.be.true(); }); it('it must be ok', function() { idCard.verify('44522119901117536X').should.be.false(); }); it('it must be ok', function() { idCard.verify('44522119901117536').should.be.false(); }); it('it must be ok', function() { idCard.verify(440882199102104190).should.be.false(); }); it('it must be ok', function() { var randIdcard = idCard.generateIdcard(); idCard.verify(randIdcard).should.be.true(); }); it('it must be ok', function() { var randIdcard = idCard.generateIdcard(); idCard.verify(randIdcard).should.be.true(); }); it('it must be ok', function() { var randIdcard = idCard.generateIdcard(); idCard.verify(randIdcard).should.be.true(); }); it('it must be ok', function() { var randIdcard = idCard.generateIdcard({ year: '', monty: '', date: '', province: '', city: '', area: '' }); idCard.verify(randIdcard).should.be.true(); }); }); describe('info()', function() { it('it must be not ok', function() { var info = idCard.info(''); info.valid.should.be.false(); }); it('it must be ok', function() { var info = idCard.info('440882199102104195'); info.valid.should.be.true(); info.province.code.should.be.equal("440000"); // info.age.should.be.equal(25); }); it('it must be ok', function() { var info = idCard.info('440882199102104195'); info.valid.should.be.true(); info.constellation.should.be.equal("水瓶座"); }); it('it must be ok', function() { var info = idCard.info('44522119901117536X'); info.valid.should.be.false(); info.province.code.should.be.equal("440000"); }); it('it must be ok', function() { var info = idCard.info('14522119901117536X'); info.valid.should.be.false(); info.city.should.be.empty(); info.province.code.should.be.equal("140000"); }); it('it must be not ok', function() { var info = idCard.info('04522119901117536X'); info.valid.should.be.false(); should.not.exist(info.province); }); it('it must be not ok', function() { var info = idCard.info('440101199801218451'); info.valid.should.be.true(); info.constellation.should.be.equal('水瓶座'); }); it('it must be not ok', function() { var info = idCard.info('220403199801042597'); info.valid.should.be.true(); info.constellation.should.be.equal('摩羯座'); }); it('it must be not ok', function() { var info = idCard.info('152101199802202278'); info.valid.should.be.true(); info.constellation.should.be.equal('双鱼座'); }); it('it must be not ok', function() { var info = idCard.info('220501199802016852'); info.valid.should.be.true(); info.constellation.should.be.equal('水瓶座'); }); it('it must be not ok', function() { var info = idCard.info('220401199803214011'); info.valid.should.be.true(); info.constellation.should.be.equal('白羊座'); }); it('it must be not ok', function() { var info = idCard.info('210601199803011619'); info.valid.should.be.true(); info.constellation.should.be.equal('双鱼座'); }); it('it must be not ok', function() { var info = idCard.info('320501199804213933'); info.valid.should.be.true(); info.constellation.should.be.equal('金牛座'); }); it('it must be not ok', function() { var info = idCard.info('310101199804017656'); info.valid.should.be.true(); info.constellation.should.be.equal('白羊座'); }); it('it must be not ok', function() { var info = idCard.info('220301199805229617'); info.valid.should.be.true(); info.constellation.should.be.equal('双子座'); }); it('it must be not ok', function() { var info = idCard.info('36060119980521413X'); info.valid.should.be.true(); info.constellation.should.be.equal('金牛座'); }); it('it must be not ok', function() { var info = idCard.info('330501199806220493'); info.valid.should.be.true(); info.constellation.should.be.equal('巨蟹座'); }); it('it must be not ok', function() { var info = idCard.info('320701199806218835'); info.valid.should.be.true(); info.constellation.should.be.equal('双子座'); }); it('it must be not ok', function() { var info = idCard.info('220501199807231471'); info.valid.should.be.true(); info.constellation.should.be.equal('狮子座'); }); it('it must be not ok', function() { var info = idCard.info('230501199807226754'); info.valid.should.be.true(); info.constellation.should.be.equal('巨蟹座'); }); it('it must be not ok', function() { var info = idCard.info('210801199808236850'); info.valid.should.be.true(); info.constellation.should.be.equal('处女座'); }); it('it must be not ok', function() { var info = idCard.info('320801199808228952'); info.valid.should.be.true(); info.constellation.should.be.equal('狮子座'); }); it('it must be not ok', function() { var info = idCard.info('230801199809249294'); info.valid.should.be.true(); info.constellation.should.be.equal('天秤座'); }); it('it must be not ok', function() { var info = idCard.info('341101199809231578'); info.valid.should.be.true(); info.constellation.should.be.equal('处女座'); }); it('it must be not ok', function() { var info = idCard.info('331001199810243894'); info.valid.should.be.true(); info.constellation.should.be.equal('天蝎座'); }); it('it must be not ok', function() { var info = idCard.info('320801199810238359'); info.valid.should.be.true(); info.constellation.should.be.equal('天秤座'); }); it('it must be not ok', function() { var info = idCard.info('340701199811239730'); info.valid.should.be.true(); info.constellation.should.be.equal('射手座'); }); it('it must be not ok', function() { var info = idCard.info('341001199811226799'); info.valid.should.be.true(); info.constellation.should.be.equal('天蝎座'); }); it('it must be not ok', function() { var info = idCard.info('331001199812229914'); info.valid.should.be.true(); info.constellation.should.be.equal('摩羯座'); }); it('it must be not ok', function() { var info = idCard.info('330801199812217019'); info.valid.should.be.true(); info.constellation.should.be.equal('射手座'); }); it('it must be not ok', function() { var info = idCard.info('440882199100201232'); info.valid.should.be.false(); info.age.should.be.equal(0); }); }); describe('constellation()', function() { it('it must be ok', function() { idCard.constellation('19910210').should.be.equal("水瓶座"); }); it('it must be ok', function() { idCard.constellation(19910210).should.be.equal("水瓶座"); }); it('it must be ok', function() { idCard.constellation(19910120).should.be.equal("摩羯座"); }); it('it must be ok', function() { idCard.constellation(19910121).should.be.equal("水瓶座"); }); it('it must be ok', function() { idCard.constellation(19910220).should.be.equal("双鱼座"); }); it('it must be ok', function() { idCard.constellation(19910219).should.be.equal("水瓶座"); }); it('it must be ok', function() { idCard.constellation(19910321).should.be.equal("白羊座"); }); it('it must be ok', function() { idCard.constellation(19910320).should.be.equal("双鱼座"); }); it('it must be ok', function() { idCard.constellation(19910421).should.be.equal("金牛座"); }); it('it must be ok', function() { idCard.constellation(19910420).should.be.equal("白羊座"); }); it('it must be ok', function() { idCard.constellation(1991052245).should.be.equal("双子座"); }); it('it must be ok', function() { idCard.constellation('1991-02-10', '-').should.be.equal("水瓶座"); }); it('it must be ok', function() { idCard.constellation('1991/03/10', '/').should.be.equal("双鱼座"); }); }); describe('getAge()', function() { it('should be ok', function() { idCard.getAge('19910323').should.be.aboveOrEqual(25); }) }) describe('upgrade15To18()', function() { it('should be ok', function() { var result = idCard.upgrade15To18('422201720809227'); result.card.should.be.equal('422201197208092274'); result.code.should.be.equal(0); }) it('should be not ok', function() { idCard.upgrade15To18('42220172080927').code.should.be.equal(-1) }) }) })