-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtypes.test.js
159 lines (149 loc) · 8.98 KB
/
types.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
'use strict';
const expect = require('chai').expect;
const validators = require('../src/common-validators');
describe('types', function() {
it('value is object', function() {
expect(validators.object({})).to.be.undefined;
expect(validators.object([])).to.have.property('error');
expect(validators.object('')).to.have.property('error');
expect(validators.object(0.1)).to.have.property('error');
expect(validators.object(0)).to.have.property('error');
expect(validators.object(/regExp/)).to.have.property('error');
expect(validators.object(new Date())).to.have.property('error');
expect(validators.object(new Date('foo'))).to.have.property('error');
expect(validators.object('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.object(true)).to.have.property('error');
expect(validators.object(false)).to.have.property('error');
expect(validators.object(function() {})).to.have.property('error');
expect(validators.object(null)).to.have.property('error');
expect(validators.object(undefined)).to.be.undefined;
});
it('value is array', function() {
expect(validators.array({})).to.have.property('error');
expect(validators.array([])).to.be.undefined;
expect(validators.array('')).to.have.property('error');
expect(validators.array(0.1)).to.have.property('error');
expect(validators.array(0)).to.have.property('error');
expect(validators.array(/regExp/)).to.have.property('error');
expect(validators.array(new Date())).to.have.property('error');
expect(validators.array(new Date('foo'))).to.have.property('error');
expect(validators.array('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.array(true)).to.have.property('error');
expect(validators.array(false)).to.have.property('error');
expect(validators.array(function() {})).to.have.property('error');
expect(validators.array(null)).to.have.property('error');
expect(validators.array(undefined)).to.be.undefined;
});
it('value is string', function() {
expect(validators.string({})).to.have.property('error');
expect(validators.string([])).to.have.property('error');
expect(validators.string('')).to.be.undefined;
expect(validators.string(0.1)).to.have.property('error');
expect(validators.string(0)).to.have.property('error');
expect(validators.string(/regExp/)).to.have.property('error');
expect(validators.string(new Date())).to.have.property('error');
expect(validators.string(new Date('foo'))).to.have.property('error');
expect(validators.string('2016-08-24T15:11:57.281Z')).to.be.undefined;
expect(validators.string(true)).to.have.property('error');
expect(validators.string(false)).to.have.property('error');
expect(validators.string(function() {})).to.have.property('error');
expect(validators.string(null)).to.have.property('error');
expect(validators.string(undefined)).to.be.undefined;
});
it('value is number', function() {
expect(validators.number({})).to.have.property('error');
expect(validators.number([])).to.have.property('error');
expect(validators.number('')).to.have.property('error');
expect(validators.number(0.1)).to.be.undefined;
expect(validators.number(0)).to.be.undefined;
expect(validators.number(/regExp/)).to.have.property('error');
expect(validators.number(new Date())).to.have.property('error');
expect(validators.number(new Date('foo'))).to.have.property('error');
expect(validators.number('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.number(true)).to.have.property('error');
expect(validators.number(false)).to.have.property('error');
expect(validators.number(function() {})).to.have.property('error');
expect(validators.number(null)).to.have.property('error');
expect(validators.number(undefined)).to.be.undefined;
});
it('value is integer', function() {
expect(validators.integer({})).to.have.property('error');
expect(validators.integer([])).to.have.property('error');
expect(validators.integer('')).to.have.property('error');
expect(validators.integer(0.1)).to.have.property('error');
expect(validators.integer(0)).to.be.undefined;
expect(validators.integer(/regExp/)).to.have.property('error');
expect(validators.integer(new Date())).to.have.property('error');
expect(validators.integer(new Date('foo'))).to.have.property('error');
expect(validators.integer('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.integer(true)).to.have.property('error');
expect(validators.integer(false)).to.have.property('error');
expect(validators.integer(function() {})).to.have.property('error');
expect(validators.integer(null)).to.have.property('error');
expect(validators.integer(undefined)).to.be.undefined;
});
it('value is date', function() {
expect(validators.date({})).to.have.property('error');
expect(validators.date([])).to.have.property('error');
expect(validators.date('')).to.have.property('error');
expect(validators.date(0.1)).to.be.undefined;
expect(validators.date(0)).to.be.undefined;
expect(validators.date(/regExp/)).to.have.property('error');
expect(validators.date(new Date())).to.be.undefined;
expect(validators.date(new Date('foo'))).to.have.property('error');
expect(validators.date('2016-08-24T15:11:57.281Z')).to.be.undefined;
expect(validators.date(true)).to.have.property('error');
expect(validators.date(false)).to.have.property('error');
expect(validators.date(function() {})).to.have.property('error');
expect(validators.date(null)).to.have.property('error');
expect(validators.date(undefined)).to.be.undefined;
});
it('value is boolean', function() {
expect(validators.boolean({})).to.have.property('error');
expect(validators.boolean([])).to.have.property('error');
expect(validators.boolean('')).to.have.property('error');
expect(validators.boolean(0.1)).to.have.property('error');
expect(validators.boolean(0)).to.have.property('error');
expect(validators.boolean(/regExp/)).to.have.property('error');
expect(validators.boolean(new Date())).to.have.property('error');
expect(validators.boolean(new Date('foo'))).to.have.property('error');
expect(validators.boolean('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.boolean(true)).to.be.undefined;
expect(validators.boolean(false)).to.be.undefined;
expect(validators.boolean(function() {})).to.have.property('error');
expect(validators.boolean(null)).to.have.property('error');
expect(validators.boolean(undefined)).to.be.undefined;
});
it('value is function', function() {
expect(validators.function({})).to.have.property('error');
expect(validators.function([])).to.have.property('error');
expect(validators.function('')).to.have.property('error');
expect(validators.function(0.1)).to.have.property('error');
expect(validators.function(0)).to.have.property('error');
expect(validators.function(/regExp/)).to.have.property('error');
expect(validators.function(new Date())).to.have.property('error');
expect(validators.function(new Date('foo'))).to.have.property('error');
expect(validators.function('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.function(true)).to.have.property('error');
expect(validators.function(false)).to.have.property('error');
expect(validators.function(function() {})).to.be.undefined;
expect(validators.function(null)).to.have.property('error');
expect(validators.function(undefined)).to.be.undefined;
});
it('value is null', function() {
expect(validators.null({})).to.have.property('error');
expect(validators.null([])).to.have.property('error');
expect(validators.null('')).to.have.property('error');
expect(validators.null(0.1)).to.have.property('error');
expect(validators.null(0)).to.have.property('error');
expect(validators.null(/regExp/)).to.have.property('error');
expect(validators.null(new Date())).to.have.property('error');
expect(validators.null(new Date('foo'))).to.have.property('error');
expect(validators.null('2016-08-24T15:11:57.281Z')).to.have.property('error');
expect(validators.null(true)).to.have.property('error');
expect(validators.null(false)).to.have.property('error');
expect(validators.null(function() {})).to.have.property('error');
expect(validators.null(null)).to.be.undefined;
expect(validators.null(undefined)).to.be.undefined;
});
});