-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathindex.test.ts
More file actions
30 lines (25 loc) · 1.25 KB
/
index.test.ts
File metadata and controls
30 lines (25 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Node.js v18+
// usage : npx tsx --test index.test.ts
import test from 'node:test';
import assert from 'node:assert/strict';
import { mykadDOB } from "./index.ts";
test('mykadDOB return correct DOB', () => {
assert.equal(mykadDOB("901030-55-1011"), '1990-10-30');
assert.equal(mykadDOB("011030-55-1011"), '2001-10-30');
});
test('mykadDOB reject INVALID month and day', () => {
assert.equal(mykadDOB("900015-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("901315-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900132-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900230-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900332-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900431-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900532-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900631-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900732-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900832-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("900931-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("901032-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("901131-55-1011"), 'MYKAD INVALID');
assert.equal(mykadDOB("901232-55-1011"), 'MYKAD INVALID');
});