@@ -23,11 +23,12 @@ describe('QualityChooser.test.js', () => {
23
23
store . replaceState ( state ) ;
24
24
} ) ;
25
25
26
- it ( 'renders' , ( ) => {
26
+ it ( 'renders' , async ( ) => {
27
27
const { state } = fixtures ;
28
28
const wrapper = shallowMount ( QualityChooser , {
29
29
localVue,
30
30
store,
31
+ sync : false ,
31
32
propsData : {
32
33
overallQuality : undefined ,
33
34
keep : 'show'
@@ -45,18 +46,21 @@ describe('QualityChooser.test.js', () => {
45
46
46
47
// If `overallQuality` is provided, `initialQuality` should be that value
47
48
wrapper . setProps ( { overallQuality : 1000 } ) ; // HD preset
49
+ await wrapper . vm . $nextTick ( ) ;
48
50
expect ( wrapper . vm . initialQuality ) . toBe ( 1000 ) ;
49
51
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( false ) ;
50
52
51
53
// Choose a preset
52
54
wrapper . setData ( { selectedQualityPreset : 6 } ) ; // SD preset
55
+ await wrapper . vm . $nextTick ( ) ;
53
56
// Custom quality elements should be hidden
54
57
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( false ) ;
55
58
expect ( wrapper . vm . allowedQualities ) . toEqual ( [ 2 , 4 ] ) ;
56
59
expect ( wrapper . vm . preferredQualities ) . toEqual ( [ ] ) ;
57
60
58
61
// Choose custom
59
62
wrapper . setData ( { selectedQualityPreset : 0 } ) ;
63
+ await wrapper . vm . $nextTick ( ) ;
60
64
// Custom quality elements should now be visible
61
65
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( true ) ;
62
66
expect ( wrapper . vm . allowedQualities ) . toEqual ( [ 2 , 4 ] ) ;
@@ -67,18 +71,21 @@ describe('QualityChooser.test.js', () => {
67
71
selectedQualityPreset : 0 ,
68
72
allowedQualities : [ ]
69
73
} ) ;
74
+ await wrapper . vm . $nextTick ( ) ;
70
75
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( true ) ;
71
76
expect ( wrapper . findAll ( '#customQualityWrapper select' ) . at ( 1 ) . is ( ':disabled' ) ) . toBe ( true ) ;
72
77
73
78
// Choose keep
74
79
wrapper . setData ( { selectedQualityPreset : 'keep' } ) ;
80
+ await wrapper . vm . $nextTick ( ) ;
75
81
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( false ) ;
76
82
// Underlying value should be equal to `initialQuality`
77
83
expect ( wrapper . vm . allowedQualities ) . toEqual ( [ 8 , 32 , 64 , 128 , 256 , 512 ] ) ; // HD preset
78
84
expect ( wrapper . vm . preferredQualities ) . toEqual ( [ ] ) ;
79
85
80
86
// And to custom again
81
87
wrapper . setData ( { selectedQualityPreset : 0 } ) ;
88
+ await wrapper . vm . $nextTick ( ) ;
82
89
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( true ) ;
83
90
// Underlying value should be equal to `initialQuality`
84
91
expect ( wrapper . vm . allowedQualities ) . toEqual ( [ 8 , 32 , 64 , 128 , 256 , 512 ] ) ; // HD preset
@@ -88,6 +95,7 @@ describe('QualityChooser.test.js', () => {
88
95
wrapper . setData ( {
89
96
allowedQualities : [ 2 , 4 ] // SD preset
90
97
} ) ;
98
+ await wrapper . vm . $nextTick ( ) ;
91
99
expect ( wrapper . find ( '#customQualityWrapper' ) . isVisible ( ) ) . toBe ( true ) ;
92
100
expect ( wrapper . vm . selectedQualityPreset ) . toEqual ( 0 ) ;
93
101
@@ -97,6 +105,7 @@ describe('QualityChooser.test.js', () => {
97
105
preferredQualities : [ 32 ]
98
106
} ) ;
99
107
wrapper . setData ( { allowedQualities : [ ] } ) ;
108
+ await wrapper . vm . $nextTick ( ) ;
100
109
expect ( wrapper . findAll ( '#customQualityWrapper select' ) . at ( 1 ) . is ( ':disabled' ) ) . toBe ( true ) ;
101
110
expect ( wrapper . vm . allowedQualities ) . toEqual ( [ ] ) ;
102
111
expect ( wrapper . vm . preferredQualities ) . toEqual ( [ ] ) ;
0 commit comments