@@ -3,10 +3,10 @@ import { createContainer, waitNT, waitRAF } from '../../../tests/utils'
3
3
import { BFormTags } from './form-tags'
4
4
5
5
describe ( 'form-tags' , ( ) => {
6
- it ( 'has expected default structure ' , async ( ) => {
6
+ it ( 'has div as root element ' , async ( ) => {
7
7
const wrapper = mount ( BFormTags )
8
-
9
8
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
9
+
10
10
expect ( wrapper . classes ( ) ) . toContain ( 'b-form-tags' )
11
11
expect ( wrapper . classes ( ) ) . toContain ( 'form-control' )
12
12
expect ( wrapper . attributes ( 'role' ) ) . toBe ( 'group' )
@@ -21,7 +21,6 @@ describe('form-tags', () => {
21
21
value : [ 'apple' , 'orange' ]
22
22
}
23
23
} )
24
-
25
24
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
26
25
27
26
const $tags = wrapper . findAll ( '.b-form-tag' )
@@ -50,10 +49,12 @@ describe('form-tags', () => {
50
49
value : [ 'apple' , 'orange' ]
51
50
}
52
51
} )
53
-
54
52
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
55
53
56
- await wrapper . setProps ( { value : [ 'pear' ] } )
54
+ await wrapper . setProps ( {
55
+ value : [ 'pear' ]
56
+ } )
57
+
57
58
expect ( wrapper . vm . tags ) . toEqual ( [ 'pear' ] )
58
59
59
60
wrapper . destroy ( )
@@ -71,14 +72,13 @@ describe('form-tags', () => {
71
72
}
72
73
}
73
74
} )
74
-
75
+ expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
75
76
await waitNT ( wrapper . vm )
76
77
await waitRAF ( )
77
78
78
- expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
79
-
80
79
expect ( scope ) . toBeDefined ( )
81
80
expect ( typeof scope ) . toBe ( 'object' )
81
+
82
82
expect ( Array . isArray ( scope . tags ) ) . toBe ( true )
83
83
expect ( scope . tags ) . toEqual ( [ 'apple' , 'orange' ] )
84
84
expect ( typeof scope . addTag ) . toBe ( 'function' )
@@ -104,11 +104,11 @@ describe('form-tags', () => {
104
104
name : 'foo'
105
105
}
106
106
} )
107
-
108
107
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
109
108
110
109
const $hidden = wrapper . findAll ( 'input[type=hidden]' )
111
110
expect ( $hidden . length ) . toBe ( 2 )
111
+
112
112
expect ( $hidden . at ( 0 ) . attributes ( 'value' ) ) . toEqual ( 'apple' )
113
113
expect ( $hidden . at ( 0 ) . attributes ( 'name' ) ) . toEqual ( 'foo' )
114
114
expect ( $hidden . at ( 1 ) . attributes ( 'value' ) ) . toEqual ( 'orange' )
@@ -123,12 +123,13 @@ describe('form-tags', () => {
123
123
value : [ 'apple' , 'orange' ]
124
124
}
125
125
} )
126
-
127
126
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
127
+
128
128
expect ( wrapper . vm . tags ) . toEqual ( [ 'apple' , 'orange' ] )
129
129
expect ( wrapper . vm . newTag ) . toEqual ( '' )
130
130
131
131
const $input = wrapper . find ( 'input' )
132
+
132
133
expect ( $input . exists ( ) ) . toBe ( true )
133
134
expect ( $input . element . value ) . toBe ( '' )
134
135
expect ( $input . element . type ) . toBe ( 'text' )
@@ -163,13 +164,14 @@ describe('form-tags', () => {
163
164
value : [ 'apple' , 'orange' , 'pear' , 'peach' ]
164
165
}
165
166
} )
166
-
167
167
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
168
+
168
169
expect ( wrapper . vm . tags ) . toEqual ( [ 'apple' , 'orange' , 'pear' , 'peach' ] )
169
170
expect ( wrapper . vm . newTag ) . toEqual ( '' )
170
171
171
172
let $tags = wrapper . findAll ( '.badge' )
172
173
expect ( $tags . length ) . toBe ( 4 )
174
+
173
175
expect ( $tags . at ( 1 ) . attributes ( 'title' ) ) . toEqual ( 'orange' )
174
176
175
177
const $btn = $tags . at ( 1 ) . find ( 'button' )
@@ -192,12 +194,13 @@ describe('form-tags', () => {
192
194
value : [ 'apple' , 'orange' ]
193
195
}
194
196
} )
195
-
196
197
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
198
+
197
199
expect ( wrapper . vm . tags ) . toEqual ( [ 'apple' , 'orange' ] )
198
200
expect ( wrapper . vm . newTag ) . toEqual ( '' )
199
201
200
202
const $input = wrapper . find ( 'input' )
203
+
201
204
expect ( $input . exists ( ) ) . toBe ( true )
202
205
expect ( $input . element . value ) . toBe ( '' )
203
206
@@ -231,12 +234,13 @@ describe('form-tags', () => {
231
234
value : [ 'one' , 'two' ]
232
235
}
233
236
} )
234
-
235
237
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
238
+
236
239
expect ( wrapper . vm . tags ) . toEqual ( [ 'one' , 'two' ] )
237
240
expect ( wrapper . vm . newTag ) . toEqual ( '' )
238
241
239
242
const $input = wrapper . find ( 'input' )
243
+
240
244
expect ( $input . exists ( ) ) . toBe ( true )
241
245
expect ( $input . element . value ) . toBe ( '' )
242
246
@@ -291,8 +295,8 @@ describe('form-tags', () => {
291
295
value : [ 'one' , 'two' ]
292
296
}
293
297
} )
294
-
295
298
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
299
+
296
300
expect ( wrapper . vm . tags ) . toEqual ( [ 'one' , 'two' ] )
297
301
expect ( wrapper . vm . newTag ) . toEqual ( '' )
298
302
expect ( wrapper . vm . duplicateTags ) . toEqual ( [ ] )
@@ -302,6 +306,7 @@ describe('form-tags', () => {
302
306
expect ( wrapper . find ( '.form-text' ) . exists ( ) ) . toBe ( false )
303
307
304
308
const $input = wrapper . find ( 'input' )
309
+
305
310
expect ( $input . exists ( ) ) . toBe ( true )
306
311
expect ( $input . element . value ) . toBe ( '' )
307
312
@@ -460,16 +465,16 @@ describe('form-tags', () => {
460
465
value : [ 'apple' , 'orange' ]
461
466
}
462
467
} )
463
-
464
468
expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
469
+
465
470
expect ( wrapper . vm . tags ) . toEqual ( [ 'apple' , 'orange' ] )
466
471
expect ( wrapper . vm . newTag ) . toEqual ( '' )
467
472
468
473
const $input = wrapper . find ( 'input' )
474
+ const $button = wrapper . find ( 'button.b-form-tags-button' )
475
+
469
476
expect ( $input . exists ( ) ) . toBe ( true )
470
477
expect ( $input . element . value ) . toBe ( '' )
471
-
472
- const $button = wrapper . find ( 'button.b-form-tags-button' )
473
478
expect ( $button . exists ( ) ) . toBe ( true )
474
479
expect ( $button . classes ( ) ) . toContain ( 'invisible' )
475
480
@@ -494,18 +499,20 @@ describe('form-tags', () => {
494
499
value : [ 'apple' , 'orange' ]
495
500
}
496
501
} )
497
-
502
+ expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
498
503
await waitNT ( wrapper . vm )
499
504
await waitRAF ( )
500
505
501
- expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
502
506
expect ( wrapper . vm . tags ) . toEqual ( [ 'apple' , 'orange' ] )
503
507
expect ( wrapper . vm . newTag ) . toEqual ( '' )
508
+
504
509
expect ( wrapper . classes ( ) ) . not . toContain ( 'focus' )
505
510
506
511
const $input = wrapper . find ( 'input' )
512
+
507
513
expect ( $input . exists ( ) ) . toBe ( true )
508
514
expect ( $input . element . value ) . toBe ( '' )
515
+
509
516
expect ( document . activeElement ) . not . toBe ( $input . element )
510
517
511
518
await wrapper . trigger ( 'click' )
@@ -545,25 +552,21 @@ describe('form-tags', () => {
545
552
value : [ 'apple' , 'orange' ]
546
553
}
547
554
} )
548
-
555
+ expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
549
556
await waitNT ( wrapper . vm )
550
557
await waitRAF ( )
551
558
552
- expect ( wrapper . element . tagName ) . toBe ( 'DIV' )
553
559
expect ( wrapper . vm . tags ) . toEqual ( [ 'apple' , 'orange' ] )
554
560
expect ( wrapper . vm . newTag ) . toEqual ( '' )
555
- expect ( wrapper . classes ( ) ) . toContain ( 'focus' )
561
+
562
+ expect ( wrapper . classes ( ) ) . not . toContain ( 'focus' )
556
563
557
564
const $input = wrapper . find ( 'input' )
565
+
558
566
expect ( $input . exists ( ) ) . toBe ( true )
559
567
expect ( $input . element . value ) . toBe ( '' )
560
- expect ( document . activeElement ) . toBe ( $input . element )
561
568
562
- wrapper . vm . blur ( )
563
- await waitNT ( wrapper . vm )
564
- await waitRAF ( )
565
- expect ( wrapper . classes ( ) ) . not . toContain ( 'focus' )
566
- expect ( document . activeElement ) . not . toBe ( $input . element )
569
+ expect ( document . activeElement ) . toBe ( $input . element )
567
570
568
571
wrapper . destroy ( )
569
572
} )
0 commit comments