UNPKG

digipinjs

Version:

A comprehensive TypeScript library for encoding and decoding Indian geographic coordinates into DIGIPIN format (Indian Postal Digital PIN system). Features CLI tools, caching, batch processing, and Express middleware for seamless integration.

24 lines (23 loc) 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const chai_1 = require("chai"); const util_1 = require("../util"); const errors_1 = require("../errors"); describe('DigiPin Validator', () => { it('accepts valid hyphenated pins', () => { (0, chai_1.expect)(() => (0, util_1.digiPinValidator)('K4P-9C6-LMPT')).to.not.throw(); }); it('accepts valid non-hyphenated pins', () => { (0, chai_1.expect)(() => (0, util_1.digiPinValidator)('K4P9C6LMPT')).to.not.throw(); }); it('rejects invalid length', () => { (0, chai_1.expect)(() => (0, util_1.digiPinValidator)('K4P-9C6')).to.throw(errors_1.PinFormatError); }); it('rejects invalid characters', () => { (0, chai_1.expect)(() => (0, util_1.digiPinValidator)('K4P-9C6-LMP1')).to.throw(errors_1.InvalidCharacterError); }); it('normalizes pins to uppercase compact format', () => { const normalized = (0, util_1.normalizeDigiPin)('k4p-9c6-lmpt'); (0, chai_1.expect)(normalized).to.equal('K4P9C6LMPT'); }); });