3
3
module ( "selectmenu: core" ) ;
4
4
5
5
asyncTest ( "accessibility" , function ( ) {
6
- var links ,
6
+ var wrappers ,
7
7
element = $ ( "#speed" ) . selectmenu ( ) ,
8
8
button = element . selectmenu ( "widget" ) ,
9
9
menu = element . selectmenu ( "menuWidget" ) ;
10
10
11
11
button . simulate ( "focus" ) ;
12
- links = menu . find ( "li.ui-menu-item" ) ;
12
+ wrappers = menu . find ( "li.ui-menu-item .ui-menu-item-wrapper " ) ;
13
13
14
- expect ( 12 + links . length * 2 ) ;
14
+ expect ( 12 + wrappers . length * 2 ) ;
15
15
16
16
setTimeout ( function ( ) {
17
17
equal ( button . attr ( "role" ) , "combobox" , "button role" ) ;
@@ -21,7 +21,7 @@ asyncTest( "accessibility", function() {
21
21
equal ( button . attr ( "aria-owns" ) , menu . attr ( "id" ) , "button aria-owns" ) ;
22
22
equal (
23
23
button . attr ( "aria-labelledby" ) ,
24
- links . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
24
+ wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
25
25
"button link aria-labelledby"
26
26
) ;
27
27
equal ( button . attr ( "tabindex" ) , 0 , "button link tabindex" ) ;
@@ -32,10 +32,10 @@ asyncTest( "accessibility", function() {
32
32
equal ( menu . attr ( "tabindex" ) , 0 , "menu tabindex" ) ;
33
33
equal (
34
34
menu . attr ( "aria-activedescendant" ) ,
35
- links . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
35
+ wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
36
36
"menu aria-activedescendant"
37
37
) ;
38
- $ . each ( links , function ( index ) {
38
+ $ . each ( wrappers , function ( index ) {
39
39
var link = $ ( this ) ;
40
40
equal ( link . attr ( "role" ) , "option" , "menu link #" + index + " role" ) ;
41
41
equal ( link . attr ( "tabindex" ) , - 1 , "menu link #" + index + " tabindex" ) ;
@@ -58,7 +58,7 @@ $.each([
58
58
asyncTest ( "state synchronization - after keydown on button - " + settings . type , function ( ) {
59
59
expect ( 4 ) ;
60
60
61
- var links ,
61
+ var wrappers ,
62
62
element = $ ( settings . selector ) . selectmenu ( ) ,
63
63
button = element . selectmenu ( "widget" ) ,
64
64
menu = element . selectmenu ( "menuWidget" ) ,
@@ -69,17 +69,17 @@ $.each([
69
69
70
70
button . simulate ( "focus" ) ;
71
71
setTimeout ( function ( ) {
72
- links = menu . find ( "li.ui-menu-item" ) ;
72
+ wrappers = menu . find ( "li.ui-menu-item .ui-menu-item-wrapper " ) ;
73
73
74
74
button . simulate ( "keydown" , { keyCode : $ . ui . keyCode . DOWN } ) ;
75
75
equal (
76
76
menu . attr ( "aria-activedescendant" ) ,
77
- links . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
77
+ wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
78
78
"menu aria-activedescendant"
79
79
) ;
80
80
equal (
81
81
button . attr ( "aria-activedescendant" ) ,
82
- links . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
82
+ wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
83
83
"button aria-activedescendant"
84
84
) ;
85
85
equal (
@@ -95,26 +95,26 @@ $.each([
95
95
asyncTest ( "state synchronization - after click on item - " + settings . type , function ( ) {
96
96
expect ( 4 ) ;
97
97
98
- var links ,
98
+ var wrappers ,
99
99
element = $ ( settings . selector ) . selectmenu ( ) ,
100
100
button = element . selectmenu ( "widget" ) ,
101
101
menu = element . selectmenu ( "menuWidget" ) ,
102
102
selected = element . find ( "option" ) . last ( ) ;
103
103
104
104
button . simulate ( "focus" ) ;
105
105
setTimeout ( function ( ) {
106
- links = menu . find ( "li.ui-menu-item" ) ;
106
+ wrappers = menu . find ( "li.ui-menu-item .ui-menu-item-wrapper " ) ;
107
107
108
108
button . trigger ( "click" ) ;
109
109
menu . find ( "li" ) . last ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
110
110
equal (
111
111
menu . attr ( "aria-activedescendant" ) ,
112
- links . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
112
+ wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
113
113
"menu aria-activedescendant"
114
114
) ;
115
115
equal (
116
116
button . attr ( "aria-activedescendant" ) ,
117
- links . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
117
+ wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
118
118
"button aria-activedescendant"
119
119
) ;
120
120
equal (
@@ -131,7 +131,7 @@ $.each([
131
131
"after focus item and keydown on button - " + settings . type , function ( ) {
132
132
expect ( 4 ) ;
133
133
134
- var links ,
134
+ var wrappers ,
135
135
element = $ ( settings . selector ) . selectmenu ( ) ,
136
136
button = element . selectmenu ( "widget" ) ,
137
137
menu = element . selectmenu ( "menuWidget" ) ,
@@ -141,25 +141,25 @@ $.each([
141
141
button . simulate ( "focus" ) ;
142
142
143
143
setTimeout ( function ( ) {
144
- links = menu . find ( "li.ui-menu-item" ) ;
144
+ wrappers = menu . find ( "li.ui-menu-item .ui-menu-item-wrapper " ) ;
145
145
146
146
// Open menu and click first item
147
147
button . trigger ( "click" ) ;
148
- links . first ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
148
+ wrappers . first ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
149
149
150
150
// Open menu again and hover item
151
151
button . trigger ( "click" ) ;
152
- links . eq ( 3 ) . simulate ( "mouseover" ) ;
152
+ wrappers . eq ( 3 ) . simulate ( "mouseover" ) ;
153
153
154
154
// Close and use keyboard control on button
155
155
button . simulate ( "keydown" , { keyCode : $ . ui . keyCode . ESCAPE } ) ;
156
156
button . simulate ( "focus" ) ;
157
157
setTimeout ( function ( ) {
158
158
button . simulate ( "keydown" , { keyCode : $ . ui . keyCode . DOWN } ) ;
159
159
160
- equal ( menu . attr ( "aria-activedescendant" ) , links . eq ( 1 ) . attr ( "id" ) ,
160
+ equal ( menu . attr ( "aria-activedescendant" ) , wrappers . eq ( 1 ) . attr ( "id" ) ,
161
161
"menu aria-activedescendant" ) ;
162
- equal ( button . attr ( "aria-activedescendant" ) , links . eq ( 1 ) . attr ( "id" ) ,
162
+ equal ( button . attr ( "aria-activedescendant" ) , wrappers . eq ( 1 ) . attr ( "id" ) ,
163
163
"button aria-activedescendant" ) ;
164
164
equal ( element . find ( "option:selected" ) . val ( ) , options . eq ( 1 ) . val ( ) ,
165
165
"original select state" ) ;
@@ -172,54 +172,54 @@ $.each([
172
172
asyncTest ( "item looping - " + settings . type , function ( ) {
173
173
expect ( 4 ) ;
174
174
175
- var links ,
175
+ var wrappers ,
176
176
element = $ ( settings . selector ) . selectmenu ( ) ,
177
177
button = element . selectmenu ( "widget" ) ,
178
178
menu = element . selectmenu ( "menuWidget" ) ;
179
179
180
180
button . simulate ( "focus" ) ;
181
181
setTimeout ( function ( ) {
182
- links = menu . find ( "li.ui-menu-item" ) ;
182
+ wrappers = menu . find ( "li.ui-menu-item .ui-menu-item-wrapper " ) ;
183
183
184
184
button . trigger ( "click" ) ;
185
- links . first ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
185
+ wrappers . first ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
186
186
equal ( element [ 0 ] . selectedIndex , 0 , "First item is selected" ) ;
187
187
button . simulate ( "keydown" , { keyCode : $ . ui . keyCode . UP } ) ;
188
188
equal ( element [ 0 ] . selectedIndex , 0 , "No looping beyond first item" ) ;
189
189
190
190
button . trigger ( "click" ) ;
191
- links . last ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
192
- equal ( element [ 0 ] . selectedIndex , links . length - 1 , "Last item is selected" ) ;
191
+ wrappers . last ( ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
192
+ equal ( element [ 0 ] . selectedIndex , wrappers . length - 1 , "Last item is selected" ) ;
193
193
button . simulate ( "keydown" , { keyCode : $ . ui . keyCode . DOWN } ) ;
194
- equal ( element [ 0 ] . selectedIndex , links . length - 1 , "No looping behind last item" ) ;
194
+ equal ( element [ 0 ] . selectedIndex , wrappers . length - 1 , "No looping behind last item" ) ;
195
195
start ( ) ;
196
196
} ) ;
197
197
} ) ;
198
198
199
199
asyncTest ( "item focus and active state - " + settings . type , function ( ) {
200
200
expect ( 4 ) ;
201
201
202
- var items , focusedItem ,
202
+ var wrappers , focusedItem ,
203
203
element = $ ( settings . selector ) . selectmenu ( ) ,
204
204
button = element . selectmenu ( "widget" ) ,
205
205
menu = element . selectmenu ( "menuWidget" ) ;
206
206
207
207
button . simulate ( "focus" ) ;
208
208
setTimeout ( function ( ) {
209
- items = menu . find ( "li.ui-menu-item" ) ;
209
+ wrappers = menu . find ( "li.ui-menu-item .ui-menu-item-wrapper " ) ;
210
210
211
211
button . trigger ( "click" ) ;
212
212
setTimeout ( function ( ) {
213
213
checkItemClasses ( ) ;
214
214
215
- items . eq ( 3 ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
215
+ wrappers . eq ( 3 ) . simulate ( "mouseover" ) . trigger ( "click" ) ;
216
216
217
217
button . trigger ( "click" ) ;
218
- items . eq ( 2 ) . simulate ( "mouseover" ) ;
218
+ wrappers . eq ( 2 ) . simulate ( "mouseover" ) ;
219
219
$ ( document ) . trigger ( "click" ) ;
220
220
221
221
button . trigger ( "click" ) ;
222
- items . eq ( 1 ) . simulate ( "mouseover" ) ;
222
+ wrappers . eq ( 1 ) . simulate ( "mouseover" ) ;
223
223
$ ( document ) . trigger ( "click" ) ;
224
224
225
225
button . trigger ( "click" ) ;
@@ -231,17 +231,17 @@ $.each([
231
231
} ) ;
232
232
233
233
function checkItemClasses ( ) {
234
- focusedItem = menu . find ( "li.ui-state-focus" ) ;
234
+ focusedItem = menu . find ( "li .ui-state-focus" ) ;
235
235
equal ( focusedItem . length , 1 , "only one item has ui-state-focus class" ) ;
236
- equal ( focusedItem . attr ( "id" ) , items . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
236
+ equal ( focusedItem . attr ( "id" ) , wrappers . eq ( element [ 0 ] . selectedIndex ) . attr ( "id" ) ,
237
237
"selected item has ui-state-focus class" ) ;
238
238
}
239
239
} ) ;
240
240
241
241
asyncTest ( "empty option - " + settings . type , function ( ) {
242
242
expect ( 7 ) ;
243
243
244
- var button , menu , links , link ,
244
+ var button , menu , wrappers , wrapper ,
245
245
element = $ ( settings . selector ) ;
246
246
247
247
element . find ( "option" ) . first ( ) . text ( "" ) ;
@@ -251,20 +251,21 @@ $.each([
251
251
252
252
button . simulate ( "focus" ) ;
253
253
setTimeout ( function ( ) {
254
- links = menu . find ( "li:not(.ui-selectmenu-optgroup)" ) ;
255
- link = links . first ( ) ;
254
+ wrappers = menu . find ( "li:not(.ui-selectmenu-optgroup) .ui-menu-item-wrapper " ) ;
255
+ wrapper = wrappers . first ( ) ;
256
256
257
257
button . trigger ( "click" ) ;
258
258
259
- equal ( links . length , element . find ( "option" ) . length ,
259
+ equal ( wrappers . length , element . find ( "option" ) . length ,
260
260
"correct amount of list elements" ) ;
261
- ok ( link . outerHeight ( ) > 10 , "empty item seems to have reasonable height" ) ;
262
- ok ( link . attr ( "id" ) , "empty item has id attribute" ) ;
263
- ok ( link . hasClass ( "ui-menu-item" ) , "empty item has ui-menu-item class" ) ;
264
- ok ( ! link . hasClass ( "ui-menu-divider" ) ,
261
+ ok ( wrapper . outerHeight ( ) > 10 , "empty item seems to have reasonable height" ) ;
262
+ ok ( wrapper . attr ( "id" ) , "empty item has id attribute" ) ;
263
+ ok ( wrapper . parent ( ) . hasClass ( "ui-menu-item" ) ,
264
+ "empty item has ui-menu-item class" ) ;
265
+ ok ( ! wrapper . hasClass ( "ui-menu-divider" ) ,
265
266
"empty item does not have ui-menu-divider class" ) ;
266
- equal ( link . attr ( "tabindex" ) , - 1 , "empty item has tabindex" ) ;
267
- equal ( link . attr ( "role" ) , "option" , "empty item has role option" ) ;
267
+ equal ( wrapper . attr ( "tabindex" ) , - 1 , "empty item has tabindex" ) ;
268
+ equal ( wrapper . attr ( "role" ) , "option" , "empty item has role option" ) ;
268
269
269
270
start ( ) ;
270
271
} ) ;
0 commit comments