Files
gameno-api/utils/jalaliDate.test.js

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');
});
});