From dd58148a2d47de9942c3266a8cdfd8dead32c528 Mon Sep 17 00:00:00 2001 From: Shinigami Date: Wed, 9 Nov 2022 19:47:22 +0100 Subject: fix(date): don't allow parameters <= 0 (#1536) --- test/date.spec.ts | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) (limited to 'test') diff --git a/test/date.spec.ts b/test/date.spec.ts index d5016e2d..365e2cab 100644 --- a/test/date.spec.ts +++ b/test/date.spec.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, it } from 'vitest'; -import { faker } from '../src'; +import { faker, FakerError } from '../src'; import { seededTests } from './support/seededRuns'; const converterMap = [ @@ -130,11 +130,11 @@ describe('date', () => { expect(date).greaterThanOrEqual(yearsAgo); }); - it('should return a past date when years 0', () => { + it('should throw an error when years = 0', () => { const refDate = new Date(); - const date = faker.date.past(0, refDate.toISOString()); - - expect(date).lessThan(refDate); + expect(() => faker.date.past(0, refDate.toISOString())).toThrow( + new FakerError('Years must be greater than 0.') + ); }); it.each(converterMap)( @@ -158,11 +158,11 @@ describe('date', () => { expect(date).greaterThan(new Date()); }); - it('should return a future date when years 0', () => { + it('should throw an error when years = 0', () => { const refDate = new Date(); - const date = faker.date.future(0, refDate.toISOString()); - - expect(date).greaterThan(refDate); // date should be after the date given + expect(() => faker.date.future(0, refDate.toISOString())).toThrow( + new FakerError('Years must be greater than 0.') + ); }); it.each(converterMap)( @@ -218,6 +218,13 @@ describe('date', () => { expect(date).lessThanOrEqual(new Date()); }); + it('should throw an error when days = 0', () => { + const refDate = new Date(); + expect(() => faker.date.recent(0, refDate.toISOString())).toThrow( + new FakerError('Days must be greater than 0.') + ); + }); + it.each(converterMap)( 'should return a date N days from the recent past, starting from refDate', (converter) => { @@ -249,6 +256,13 @@ describe('date', () => { expect(date).greaterThanOrEqual(new Date()); }); + it('should throw an error when days = 0', () => { + const refDate = new Date(); + expect(() => faker.date.soon(0, refDate.toISOString())).toThrow( + new FakerError('Days must be greater than 0.') + ); + }); + it.each(converterMap)( 'should return a date N days from the recent future, starting from refDate', (converter) => { -- cgit v1.2.3