feat: import class sessions, attendance, and payments from JSON
Match students by name when national ID or phone is missing, parse Jalali dates, and allow sessions without a professor.
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
'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');
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user