Skip to content

Commit f95b38c

Browse files
committed
Fix required number input does not require a value
1 parent d69e0af commit f95b38c

File tree

2 files changed

+9
-3
lines changed

2 files changed

+9
-3
lines changed

src/utils/validators.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { defaults, isNil, isNumber, isInteger, isString, isArray, isFunction } from "lodash";
1+
import { defaults, isNil, isNumber, isInteger, isString, isArray, isFunction, isFinite } from "lodash";
22
import fecha from "fecha";
33

44
let resources = {
@@ -66,7 +66,7 @@ const validators = {
6666
if (res != null) return res;
6767

6868
let err = [];
69-
if (isNumber(value)) {
69+
if (isFinite(value)) {
7070
if (!isNil(field.min) && value < field.min) {
7171
err.push(msg(messages.numberTooSmall, field.min));
7272
}

test/unit/specs/utils/validators.spec.js

+7-1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,12 @@ describe("Validators", () => {
3131
check(v.number, null, field, 1);
3232
});
3333

34+
it("should give error if value is NaN or Infinity", () => {
35+
check(v.number, NaN, field, 1);
36+
check(v.number, Infinity, field, 1);
37+
check(v.number, -Infinity, field, 1);
38+
});
39+
3440
it("should give error if value is smaller than min", () => {
3541
check(v.number, -1, field, 1);
3642
check(v.number, 0, field, 1);
@@ -68,7 +74,7 @@ describe("Validators", () => {
6874
// invalid integer
6975
check(v.integer, 3.14, field, 1);
7076
// invalid number, invalid integer
71-
check(v.integer, "3.14", field, 2);
77+
check(v.integer, NaN, field, 2);
7278
});
7379

7480
it("should not give error if value is integer", () => {

0 commit comments

Comments
 (0)