import { isValidDate } from './isValidDate';

describe('isValidDate', () => {
  it('it should return false if the input is undefined', () => {
    expect(isValidDate(undefined)).toBe(false);
  });

  it('should return true for a valid date string', () => {
    expect(isValidDate('2022-01-01')).toBe(true);
    expect(isValidDate('2000-02-29')).toBe(true);
    expect(isValidDate('1997-12-17T14:30:45')).toBe(true);
  });

  it('should return false for an invalid date string', () => {
    expect(isValidDate('2022-13-01')).toBe(false);
    expect(isValidDate('not a date')).toBe(false);
    // Feb 29 is not a valid date in 2021
    expect(isValidDate('2022-02-31')).toBe(false);
    expect(isValidDate('2022-11-32')).toBe(false);
  });
});
