Initial NPM package

This commit is contained in:
Nemo 2020-02-25 14:20:53 +05:30
parent b0fcf5a284
commit 783c0dc956
5 changed files with 53 additions and 13 deletions

View File

@ -1,6 +1,14 @@
language: php
php:
- '7.2'
- '7.3'
- '7.4'
install: composer install
matrix:
include:
- language: php
php:
- '7.2'
- '7.3'
- '7.4'
install: composer install
- language: node_js
node_js:
- '10'
- '12'
- '13'
- '14'

View File

@ -1,13 +1,13 @@
{
"name": "india-pincode-regex",
"version": "1.0.0",
"name": "pincode",
"version": "1.0.2",
"description": "A simple regex based validator for PIN codes in India",
"main": "index.js",
"main": "src/index.js",
"directories": {
"test": "tests"
},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
"test": "node tests/validate.js"
},
"repository": {
"type": "git",
@ -28,5 +28,6 @@
"homepage": "https://github.com/captn3m0/india-pincode-regex#readme",
"devDependencies": {
"regexgen": "^1.3.0"
}
},
"dependencies": {}
}

17
src/index.js Normal file
View File

@ -0,0 +1,17 @@
const readline = require("readline");
const fs = require("fs");
const regexes = fs.readFileSync(__dirname + '/../regex.txt', 'utf8').split("\n")
// We drop the opening / and ending /u
.map(function(r) {return new RegExp(r.slice(1, -2));})
module.exports = {
validate: function(pin) {
for (let i in regexes) {
if (regexes[i].test(pin)) {
return true;
}
}
return false;
}
};

View File

@ -4,9 +4,9 @@ use PIN\Validator as P;
use PHPUnit\Framework\TestCase;
class SimpleTest extends TestCase {
const PINS = ['244713', '560029', '560030'];
const PINS = ['244713', '560029', '560030', '110011'];
const INVALID_PINS = ['999999'];
const INVALID_PINS = ['999999', '99999', '9999', '999', '99', '9'];
public function testSamplePins() {
foreach(self::PINS as $pin) {

14
tests/validate.js Normal file
View File

@ -0,0 +1,14 @@
const pincode = require('../src/index');
const assert = require('assert');
assert.strictEqual(true, pincode.validate('110011'));
assert.strictEqual(true, pincode.validate('244713'));
assert.strictEqual(true, pincode.validate('560029'));
assert.strictEqual(true, pincode.validate('560030'));
assert.strictEqual(false, pincode.validate('111111'));
assert.strictEqual(false, pincode.validate('999999'));
assert.strictEqual(false, pincode.validate('99999'));
assert.strictEqual(false, pincode.validate('9999'));
assert.strictEqual(false, pincode.validate('999'));
assert.strictEqual(false, pincode.validate('99'));
assert.strictEqual(false, pincode.validate('9'));