@@ -248,6 +248,28 @@ test( "source, custom", function() {
248
248
} ) ;
249
249
} ) ;
250
250
251
+ test ( "custom source with jQuery label object" , function ( ) {
252
+ expect ( 4 ) ;
253
+ var element = $ ( "#autocomplete" ) . autocomplete ( {
254
+ source : function ( request , response ) {
255
+ equal ( request . term , "er" ) ;
256
+ response ( [
257
+ { label : $ ( "<strong>er</strong><span>lang</span>" ) , value : "erlang" } ,
258
+ { label : $ ( "<span>p</span><strong>er</strong><span>l</span>" ) , value : "perl" } ,
259
+ // Intentional string, must not be interpreted as HTML
260
+ { label : "<span>ob</span><strong>er</strong><span>on</span>" , value : "oberon" }
261
+ ] ) ;
262
+ }
263
+ } ) ;
264
+ element . val ( "er" ) . autocomplete ( "search" ) ;
265
+ var menu = $ ( "#autocomplete" ) . autocomplete ( "widget" ) ,
266
+ perl = menu . find ( ".ui-menu-item span+strong+span" ) ,
267
+ oberon = menu . find ( ".ui-menu-item:last-child" ) ;
268
+ equal ( perl . length , 1 ) ;
269
+ equal ( perl . parent ( ) . text ( ) , "perl" ) ;
270
+ equal ( oberon . text ( ) , "<span>ob</span><strong>er</strong><span>on</span>" ) ;
271
+ } ) ;
272
+
251
273
test ( "source, update after init" , function ( ) {
252
274
expect ( 2 ) ;
253
275
var element = $ ( "#autocomplete" ) . autocomplete ( {
0 commit comments