42 lines
1.3 KiB
JavaScript
42 lines
1.3 KiB
JavaScript
import { getMalayalamDate, getOrdinalDay } from '../src/calendar.mjs';
|
|
import assert from 'node:assert';
|
|
|
|
describe('getMalayalamDate unit test', () => {
|
|
it('Conversion of date 2026-01-01 returns correct Malayalam date', () => {
|
|
const result = getMalayalamDate(new Date(2026, 0, 1, 0, 0, 0));
|
|
assert.deepStrictEqual(result, {
|
|
year: 1201,
|
|
month: 'Dhanu',
|
|
day: 17,
|
|
naksatra: 'Rohini'
|
|
});
|
|
});
|
|
});
|
|
|
|
describe('getOrdinalDay function unit test', () => {
|
|
it('Returns correct ordinal for various days', () => {
|
|
const testCases = [
|
|
{ day: 1, expected: '1st' },
|
|
{ day: 2, expected: '2nd' },
|
|
{ day: 3, expected: '3rd' },
|
|
{ day: 4, expected: '4th' },
|
|
{ day: 5, expected: '5th' },
|
|
{ day: 11, expected: '11th' },
|
|
{ day: 12, expected: '12th' },
|
|
{ day: 13, expected: '13th' },
|
|
{ day: 14, expected: '14th' },
|
|
{ day: 20, expected: '20th' },
|
|
{ day: 21, expected: '21st' },
|
|
{ day: 22, expected: '22nd' },
|
|
{ day: 23, expected: '23rd' },
|
|
{ day: 24, expected: '24th' },
|
|
{ day: 30, expected: '30th' },
|
|
{ day: 31, expected: '31st' }
|
|
];
|
|
|
|
testCases.forEach(({ day, expected }) => {
|
|
assert.strictEqual(getOrdinalDay(day), expected);
|
|
});
|
|
});
|
|
});
|