diff options
| author | ST-DDT <[email protected]> | 2025-04-11 20:35:21 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-04-11 20:35:21 +0200 |
| commit | e4cc4e50d1d4103c26f06fd2db0ca187dbb537cd (patch) | |
| tree | 69b87c8165fe618278b68c87ab26552d01601753 /test/modules | |
| parent | f70a6f7a656090ed900ea18b39961d0d5ff78be0 (diff) | |
| download | faker-e4cc4e50d1d4103c26f06fd2db0ca187dbb537cd.tar.xz faker-e4cc4e50d1d4103c26f06fd2db0ca187dbb537cd.zip | |
fix(number): don't ignore multipleOf in float when min=max (#3417)
Diffstat (limited to 'test/modules')
| -rw-r--r-- | test/modules/number.spec.ts | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/modules/number.spec.ts b/test/modules/number.spec.ts index 278baadb..60781af8 100644 --- a/test/modules/number.spec.ts +++ b/test/modules/number.spec.ts @@ -156,6 +156,18 @@ describe('number', () => { ); }); + it('throws for impossible multipleOf where min=max', () => { + const input = { + min: 11, + max: 11, + multipleOf: 10, + }; + + expect(() => faker.number.int(input)).toThrow( + new FakerError('No suitable integer value between 11 and 11 found.') + ); + }); + it('should return a random number given a maximum value as Number', () => { const actual = faker.number.int(10); @@ -391,6 +403,32 @@ describe('number', () => { ); }); + it('throws for impossible multipleOf', () => { + const input = { + min: 11, + max: 19, + multipleOf: 10, + }; + + expect(() => faker.number.float(input)).toThrow( + new FakerError( + 'No suitable integer value between 1.1 and 1.9000000000000001 found.' + ) + ); + }); + + it('throws for impossible multipleOf where min=max', () => { + const input = { + min: 11, + max: 11, + multipleOf: 10, + }; + + expect(() => faker.number.float(input)).toThrow( + new FakerError('No suitable integer value between 1.1 and 1.1 found.') + ); + }); + it('should not modify the input object', () => { expect(() => faker.number.float(Object.freeze({ min: 1, max: 2 })) |
