16
16
* limitations under the License.
17
17
*/
18
18
19
- /* eslint-disable no-new-wrappers, no- empty-function */
19
+ /* eslint-disable no-empty-function */
20
20
21
21
'use strict' ;
22
22
@@ -30,7 +30,32 @@ var isBoolean = require( './../lib' );
30
30
31
31
// MAIN //
32
32
33
- bench ( pkg + '::primitives' , function benchmark ( b ) {
33
+ bench ( pkg + '::primitives,true' , function benchmark ( b ) {
34
+ var values ;
35
+ var bool ;
36
+ var i ;
37
+
38
+ values = [
39
+ true ,
40
+ false
41
+ ] ;
42
+
43
+ b . tic ( ) ;
44
+ for ( i = 0 ; i < b . iterations ; i ++ ) {
45
+ bool = isBoolean ( values [ i % values . length ] ) ;
46
+ if ( typeof bool !== 'boolean' ) {
47
+ b . fail ( 'should return a boolean' ) ;
48
+ }
49
+ }
50
+ b . toc ( ) ;
51
+ if ( ! isBoolean . isPrimitive ( bool ) ) {
52
+ b . fail ( 'should return a boolean' ) ;
53
+ }
54
+ b . pass ( 'benchmark finished' ) ;
55
+ b . end ( ) ;
56
+ } ) ;
57
+
58
+ bench ( pkg + '::primitives,false' , function benchmark ( b ) {
34
59
var values ;
35
60
var bool ;
36
61
var i ;
@@ -39,8 +64,6 @@ bench( pkg+'::primitives', function benchmark( b ) {
39
64
'5' ,
40
65
5 ,
41
66
NaN ,
42
- true ,
43
- false ,
44
67
null ,
45
68
void 0
46
69
] ;
@@ -60,16 +83,40 @@ bench( pkg+'::primitives', function benchmark( b ) {
60
83
b . end ( ) ;
61
84
} ) ;
62
85
63
- bench ( pkg + '::objects' , function benchmark ( b ) {
86
+ bench ( pkg + '::objects,true' , function benchmark ( b ) {
87
+ var values ;
88
+ var bool ;
89
+ var i ;
90
+
91
+ values = [
92
+ new Boolean ( true ) ,
93
+ new Boolean ( false )
94
+ ] ;
95
+
96
+ b . tic ( ) ;
97
+ for ( i = 0 ; i < b . iterations ; i ++ ) {
98
+ bool = isBoolean ( values [ i % values . length ] ) ;
99
+ if ( typeof bool !== 'boolean' ) {
100
+ b . fail ( 'should return a boolean' ) ;
101
+ }
102
+ }
103
+ b . toc ( ) ;
104
+ if ( ! isBoolean . isPrimitive ( bool ) ) {
105
+ b . fail ( 'should return a boolean' ) ;
106
+ }
107
+ b . pass ( 'benchmark finished' ) ;
108
+ b . end ( ) ;
109
+ } ) ;
110
+
111
+ bench ( pkg + '::objects,false' , function benchmark ( b ) {
64
112
var values ;
65
113
var bool ;
66
114
var i ;
67
115
68
116
values = [
69
117
[ ] ,
70
118
{ } ,
71
- function noop ( ) { } ,
72
- new Boolean ( true )
119
+ function noop ( ) { }
73
120
] ;
74
121
75
122
b . tic ( ) ;
@@ -87,7 +134,32 @@ bench( pkg+'::objects', function benchmark( b ) {
87
134
b . end ( ) ;
88
135
} ) ;
89
136
90
- bench ( pkg + '::primitives:isPrimitive' , function benchmark ( b ) {
137
+ bench ( pkg + '::primitives:isPrimitive,true' , function benchmark ( b ) {
138
+ var values ;
139
+ var bool ;
140
+ var i ;
141
+
142
+ values = [
143
+ true ,
144
+ false
145
+ ] ;
146
+
147
+ b . tic ( ) ;
148
+ for ( i = 0 ; i < b . iterations ; i ++ ) {
149
+ bool = isBoolean . isPrimitive ( values [ i % values . length ] ) ;
150
+ if ( typeof bool !== 'boolean' ) {
151
+ b . fail ( 'should return a boolean' ) ;
152
+ }
153
+ }
154
+ b . toc ( ) ;
155
+ if ( ! isBoolean . isPrimitive ( bool ) ) {
156
+ b . fail ( 'should return a boolean' ) ;
157
+ }
158
+ b . pass ( 'benchmark finished' ) ;
159
+ b . end ( ) ;
160
+ } ) ;
161
+
162
+ bench ( pkg + '::primitives:isPrimitive,false' , function benchmark ( b ) {
91
163
var values ;
92
164
var bool ;
93
165
var i ;
@@ -96,8 +168,6 @@ bench( pkg+'::primitives:isPrimitive', function benchmark( b ) {
96
168
'5' ,
97
169
5 ,
98
170
NaN ,
99
- true ,
100
- false ,
101
171
null ,
102
172
void 0
103
173
] ;
@@ -117,7 +187,7 @@ bench( pkg+'::primitives:isPrimitive', function benchmark( b ) {
117
187
b . end ( ) ;
118
188
} ) ;
119
189
120
- bench ( pkg + '::objects:isPrimitive' , function benchmark ( b ) {
190
+ bench ( pkg + '::objects:isPrimitive,false ' , function benchmark ( b ) {
121
191
var values ;
122
192
var bool ;
123
193
var i ;
@@ -144,7 +214,7 @@ bench( pkg+'::objects:isPrimitive', function benchmark( b ) {
144
214
b . end ( ) ;
145
215
} ) ;
146
216
147
- bench ( pkg + '::primitives:isObject' , function benchmark ( b ) {
217
+ bench ( pkg + '::primitives:isObject,false ' , function benchmark ( b ) {
148
218
var values ;
149
219
var bool ;
150
220
var i ;
@@ -174,16 +244,40 @@ bench( pkg+'::primitives:isObject', function benchmark( b ) {
174
244
b . end ( ) ;
175
245
} ) ;
176
246
177
- bench ( pkg + '::objects:isObject' , function benchmark ( b ) {
247
+ bench ( pkg + '::objects:isObject,true' , function benchmark ( b ) {
248
+ var values ;
249
+ var bool ;
250
+ var i ;
251
+
252
+ values = [
253
+ new Boolean ( true ) ,
254
+ new Boolean ( false )
255
+ ] ;
256
+
257
+ b . tic ( ) ;
258
+ for ( i = 0 ; i < b . iterations ; i ++ ) {
259
+ bool = isBoolean . isObject ( values [ i % values . length ] ) ;
260
+ if ( typeof bool !== 'boolean' ) {
261
+ b . fail ( 'should return a boolean' ) ;
262
+ }
263
+ }
264
+ b . toc ( ) ;
265
+ if ( ! isBoolean . isPrimitive ( bool ) ) {
266
+ b . fail ( 'should return a boolean' ) ;
267
+ }
268
+ b . pass ( 'benchmark finished' ) ;
269
+ b . end ( ) ;
270
+ } ) ;
271
+
272
+ bench ( pkg + '::objects:isObject,false' , function benchmark ( b ) {
178
273
var values ;
179
274
var bool ;
180
275
var i ;
181
276
182
277
values = [
183
278
[ ] ,
184
279
{ } ,
185
- function noop ( ) { } ,
186
- new Boolean ( true )
280
+ function noop ( ) { }
187
281
] ;
188
282
189
283
b . tic ( ) ;
0 commit comments