Skip to content

Commit fe6c791

Browse files
author
Richard Všianský
authored
Merge pull request #1257 from rvsia/allowNegativeNumbers
fix(renderer): allow negative numbers in dataType
2 parents 79433d8 + 03b0291 commit fe6c791

File tree

2 files changed

+15
-3
lines changed

2 files changed

+15
-3
lines changed

packages/react-form-renderer/src/tests/validators/validators.test.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,18 @@ describe('New validators', () => {
198198
expect(dataTypeValidator('float')()(123.232)).toBeUndefined();
199199
});
200200

201+
it('should return negative number and pass', () => {
202+
expect(dataTypeValidator('number')()(-123.232)).toBeUndefined();
203+
});
204+
205+
it('should return negative integer and pass', () => {
206+
expect(dataTypeValidator('integer')()(-123)).toBeUndefined();
207+
});
208+
209+
it('should return negative float and pass', () => {
210+
expect(dataTypeValidator('float')()(-123.123)).toBeUndefined();
211+
});
212+
201213
it('should return float and pass 2', () => {
202214
expect(dataTypeValidator('float')()(123)).toBeUndefined();
203215
});

packages/react-form-renderer/src/validators/validator-functions.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,20 +178,20 @@ export const dataTypeValidator = (type) =>
178178
string: (options) => stringValidator({ message: 'Field value has to be string', ...options }),
179179
integer: (options) =>
180180
pattern({
181-
pattern: /^\d*$/,
181+
pattern: /^-?\d*$/,
182182
message: 'Value must be integer',
183183
...options,
184184
}),
185185
boolean: (options) => booleanValidator({ message: 'Field value has to be boolean', ...options }),
186186
number: (options) =>
187187
pattern({
188-
pattern: /^\d*[.]{0,1}\d*$/,
188+
pattern: /^-?\d*[.]{0,1}\d*$/,
189189
message: 'Values must be number',
190190
...options,
191191
}),
192192
float: (options) =>
193193
pattern({
194-
pattern: /^\d*[.]{0,1}\d*$/,
194+
pattern: /^-?\d*[.]{0,1}\d*$/,
195195
message: 'Values must be number',
196196
...options,
197197
}),

0 commit comments

Comments
 (0)