UNPKG

3.15 kBJavaScriptView Raw
1if (typeof require !== 'undefined') {
2 var Validator = require('../src/validator.js');
3 var expect = require('chai').expect;
4} else {
5 var Validator = window.Validator;
6 var expect = window.chai.expect;
7}
8
9describe('integer pass rules', function() {
10 it('should pass if no value is entered', function() {
11 var validator = new Validator({}, {
12 age: 'integer'
13 });
14 expect(validator.fails()).to.be.false;
15 expect(validator.passes()).to.be.true;
16 });
17
18 it('should pass with an integer value', function() {
19 var validator = new Validator({
20 age: 18
21 }, {
22 age: 'integer'
23 });
24 expect(validator.fails()).to.be.false;
25 expect(validator.passes()).to.be.true;
26 });
27
28 it('should pass with a string containing an integer value', function() {
29 var validator = new Validator({
30 age: '18'
31 }, {
32 age: 'integer'
33 });
34 expect(validator.fails()).to.be.false;
35 expect(validator.passes()).to.be.true;
36 });
37
38 it('should pass with unsigned integer', function() {
39 var validator = new Validator({
40 num: -123
41 }, {
42 num: 'integer'
43 });
44 expect(validator.passes()).to.be.true;
45 expect(validator.fails()).to.be.false;
46 });
47
48});
49
50describe('integer fail rules', function() {
51
52 it('should fail with a decimal value', function() {
53 var validator = new Validator({
54 age: 18.9
55 }, {
56 age: 'integer'
57 });
58 expect(validator.fails()).to.be.true;
59 expect(validator.passes()).to.be.false;
60 expect(validator.errors.first('age')).to.equal('The age must be an integer.')
61 });
62
63 it('should fail with a string value containing numbers and letters', function() {
64 var validator = new Validator({
65 age: '18d'
66 }, {
67 age: 'integer'
68 });
69 expect(validator.fails()).to.be.true;
70 expect(validator.passes()).to.be.false;
71 expect(validator.errors.first('age')).to.equal('The age must be an integer.')
72 });
73
74 it('should fail with a boolean true value', function() {
75 var validator = new Validator({
76 age: true
77 }, {
78 age: 'integer'
79 });
80 expect(validator.fails()).to.be.true;
81 expect(validator.passes()).to.be.false;
82 });
83
84 it('should fail with a boolean false value', function() {
85 var validator = new Validator({
86 age: false
87 }, {
88 age: 'integer'
89 });
90 expect(validator.fails()).to.be.true;
91 expect(validator.passes()).to.be.false;
92 });
93
94 it('should fail if the value is an array', function() {
95 var validator = new Validator({
96 age: []
97 }, {
98 age: 'required|integer'
99 });
100 expect(validator.fails()).to.be.true;
101 expect(validator.passes()).to.be.false;
102 });
103
104 it('should fail if the value is an object', function() {
105 var validator = new Validator({
106 age: {}
107 }, {
108 age: 'integer'
109 });
110 expect(validator.fails()).to.be.true;
111 expect(validator.passes()).to.be.false;
112 });
113
114 it('should fail with unsigned float-integer', function() {
115 var validator = new Validator({
116 num: -70.36
117 }, {
118 num: 'integer'
119 });
120 expect(validator.fails()).to.be.true;
121 expect(validator.passes()).to.be.false;
122 });
123});