23 lines
1.1 KiB
JavaScript
23 lines
1.1 KiB
JavaScript
'use strict';
|
|
|
|
const { describe, it } = require('node:test');
|
|
const assert = require('node:assert/strict');
|
|
const { jalaliToGregorian, parseJalaliDate, parseImportDate } = require('./jalaliDate');
|
|
|
|
describe('jalaliDate', () => {
|
|
it('converts تکسا attendance dates to Gregorian', () => {
|
|
assert.equal(jalaliToGregorian(1405, 4, 23), '2026-07-14');
|
|
assert.equal(parseJalaliDate('1405.4.28'), '2026-07-19');
|
|
assert.equal(parseJalaliDate('1405/5/20'), '2026-08-11');
|
|
});
|
|
|
|
it('parses ISO and jalali values into UTC midnight dates', () => {
|
|
assert.equal(parseImportDate('2026-07-14').toISOString(), '2026-07-14T00:00:00.000Z');
|
|
assert.equal(parseImportDate('1405.5.12').toISOString(), '2026-08-03T00:00:00.000Z');
|
|
assert.equal(parseImportDate('1405/05/26').toISOString(), '2026-08-17T00:00:00.000Z');
|
|
assert.equal(parseImportDate('1405-05-26').toISOString(), '2026-08-17T00:00:00.000Z');
|
|
assert.equal(parseImportDate('۱۴۰۵/۰۵/۲۶').toISOString(), '2026-08-17T00:00:00.000Z');
|
|
assert.equal(parseImportDate('2026-08-17T00:00:00.000Z').toISOString(), '2026-08-17T00:00:00.000Z');
|
|
});
|
|
});
|