import { parseExcelDate } from '../time.js'; describe('parseExcelDate', () => { describe.todo('parses a valid date string as expected from excel', () => { const testCases = [ { fromExcel: '1899-12-30T00:00:00.000Z', expected: 3600000, }, { fromExcel: '1899-12-30T00:10:00.000Z', expected: 4200000, }, { fromExcel: '1899-12-30T01:00:00.000Z', expected: 7200000, }, { fromExcel: '1899-12-30T07:00:00.000Z', expected: 28800000, }, { fromExcel: '1899-12-30T08:00:10.000Z', expected: 32410000, }, { fromExcel: '1899-12-30T08:30:00.000Z', expected: 34200000, }, ]; for (const scenario of testCases) { it(`handles ${scenario.fromExcel}`, () => { expect(parseExcelDate(scenario.fromExcel)).toBe(scenario.expected); }); } }); describe('parses a time string that passes validation', () => { const validFields = ['10:00:00', '10:00']; validFields.forEach((field) => { it(`handles ${field}`, () => { const millis = parseExcelDate(field); expect(millis).not.toBe(0); }); }); }); describe('returns 0 on other strings', () => { const invalidFields = ['10', 'test', '']; invalidFields.forEach((field) => { it(`handles ${field}`, () => { const millis = parseExcelDate(field); expect(millis).toBe(0); }); }); }); });