1
|
|
|
import { RuleTester } from '../utils'; |
2
|
|
|
|
3
|
|
|
const tester = new RuleTester({ 'every': 'integer' }); |
4
|
|
|
|
5
|
|
|
suite('Rules: every'); |
6
|
|
|
|
7
|
|
|
test('Positive: valid input', function () { |
8
|
|
|
tester.positive([ 1 ], [ 1 ]); |
9
|
|
|
tester.positive([ 0, 1, 5 - 3874 ], [ 0, 1, 5 - 3874 ]); |
10
|
|
|
}); |
11
|
|
|
|
12
|
|
|
test('Positive: cast by inner rule', function () { |
13
|
|
|
tester.positive([ '5' ], [ 5 ]); |
14
|
|
|
tester.positive([ 10, '-34', -2 ], [ 10, -34, -2 ]); |
15
|
|
|
}); |
16
|
|
|
|
17
|
|
|
test('Negative: breaks at inner rule', function () { |
18
|
|
|
const nonumberMsg = 'NOT_NUMBER: The value is not a number or could not be cast to a number'; |
19
|
|
|
|
20
|
|
|
tester.negative([ Number.NaN ], { 0: nonumberMsg }); |
21
|
|
|
tester.negative([ 2, 0.5, '3', 'ssss' ], { 1: 'NOT_INTEGER: The number is not a valid integer', 3: nonumberMsg }); |
22
|
|
|
}); |
23
|
|
|
|
24
|
|
|
test('Negative: bad formats', function () { |
25
|
|
|
tester.negative({ object: 1 }, 'NOT_ARRAY', 'The value have to be plain js array'); |
26
|
|
|
tester.negative(false, 'NOT_ARRAY', 'The value have to be plain js array'); |
27
|
|
|
tester.negative(true, 'NOT_ARRAY', 'The value have to be plain js array'); |
28
|
|
|
tester.negative('fkdsfdsfkds', 'NOT_ARRAY', 'The value have to be plain js array'); |
29
|
|
|
}); |
30
|
|
|
|