@@ -23,8 +23,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
2323 // Prompt autocomplete for 'settings'
2424 await PageObjects . console . promptAutocomplete ( 's' ) ;
2525
26- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
27- PageObjects . console . isAutocompleteVisible ( )
26+ await retry . waitFor (
27+ 'autocomplete to be visible' ,
28+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
2829 ) ;
2930 await PageObjects . console . pressEnter ( ) ;
3031 await retry . try ( async ( ) => {
@@ -34,8 +35,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
3435 } ) ;
3536 }
3637
37- // Failing: See https://github.com/elastic/kibana/issues/227576
38- describe . skip ( 'console autocomplete feature' , function describeIndexTests ( ) {
38+ describe ( 'console autocomplete feature' , function describeIndexTests ( ) {
3939 before ( async ( ) => {
4040 log . debug ( 'navigateTo console' ) ;
4141 await PageObjects . common . navigateToApp ( 'console' ) ;
@@ -57,7 +57,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
5757 await PageObjects . console . pressEnter ( ) ;
5858 await PageObjects . console . sleepForDebouncePeriod ( ) ;
5959 await PageObjects . console . promptAutocomplete ( ) ;
60- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
60+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
6161 } ) ;
6262
6363 it ( 'correctly autocompletes inline JSON' , async ( ) => {
@@ -69,8 +69,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
6969 await PageObjects . console . promptAutocomplete ( 'e' ) ;
7070
7171 // 3) Wait for the autocomplete suggestions to appear
72- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
73- PageObjects . console . isAutocompleteVisible ( )
72+ await retry . waitFor (
73+ 'autocomplete to be visible' ,
74+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
7475 ) ;
7576
7677 // 4) Press Enter to accept the first suggestion (likely "term")
@@ -97,14 +98,19 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
9798 await PageObjects . console . pressEnter ( ) ;
9899 await PageObjects . console . sleepForDebouncePeriod ( ) ;
99100 await PageObjects . console . enterText ( `"` ) ;
100- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
101+ await retry . waitFor (
102+ 'autocomplete to be visible' ,
103+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
104+ ) ;
101105
102106 // Iterate on the first 10 suggestions (the ones that are only visible without scrolling)
103- const suggestions = [ ] ;
107+ const suggestionsPromise = [ ] ;
104108 for ( let i = 0 ; i < 10 ; i ++ ) {
105- suggestions . push ( await PageObjects . console . getAutocompleteSuggestion ( i ) ) ;
109+ suggestionsPromise . push ( PageObjects . console . getAutocompleteSuggestion ( i ) ) ;
106110 }
107111
112+ const suggestions = await Promise . all ( suggestionsPromise ) ;
113+
108114 // and expect the array to not have duplicates
109115 expect ( suggestions ) . to . eql ( _ . uniq ( suggestions ) ) ;
110116 } ) ;
@@ -126,9 +132,11 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
126132 log . debug ( 'Key type "%s"' , char ) ;
127133 await PageObjects . console . enterText ( char ) ;
128134
129- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
130- PageObjects . console . isAutocompleteVisible ( )
135+ await retry . waitFor (
136+ 'autocomplete to be visible' ,
137+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
131138 ) ;
139+
132140 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
133141
134142 for ( const [ i , method ] of methods . entries ( ) ) {
@@ -155,8 +163,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
155163 await PageObjects . console . enterText ( char ) ;
156164 }
157165
158- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
159- PageObjects . console . isAutocompleteVisible ( )
166+ await retry . waitFor (
167+ 'autocomplete to be visible' ,
168+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
160169 ) ;
161170 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
162171
@@ -180,8 +189,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
180189 log . debug ( 'Key type "%s"' , char ) ;
181190 await PageObjects . console . enterText ( char ) ;
182191 }
183- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
184- PageObjects . console . isAutocompleteVisible ( )
192+ await retry . waitFor (
193+ 'autocomplete to be visible' ,
194+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
185195 ) ;
186196 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
187197 await PageObjects . console . pressEnter ( ) ;
@@ -212,8 +222,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
212222 log . debug ( 'Key type "%s"' , char ) ;
213223 await PageObjects . console . enterText ( char ) ;
214224 }
215- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
216- PageObjects . console . isAutocompleteVisible ( )
225+ await retry . waitFor (
226+ 'autocomplete to be visible' ,
227+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
217228 ) ;
218229 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
219230
@@ -272,8 +283,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
272283 await PageObjects . console . sleepForDebouncePeriod ( ) ;
273284 log . debug ( 'Key type "%s"' , char ) ;
274285 await PageObjects . console . enterText ( char ) ; // e.g. 'P' -> 'Po' -> 'Pos'
275- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
276- PageObjects . console . isAutocompleteVisible ( )
286+ await retry . waitFor (
287+ 'autocomplete to be visible' ,
288+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
277289 ) ;
278290 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
279291 }
@@ -284,8 +296,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
284296 await PageObjects . console . enterText ( char ! ) ; // e.g. 'Post ' -> 'Post _'
285297 }
286298
287- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
288- PageObjects . console . isAutocompleteVisible ( )
299+ await retry . waitFor (
300+ 'autocomplete to be visible' ,
301+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
289302 ) ;
290303 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
291304 }
@@ -300,8 +313,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
300313 await PageObjects . console . enterText ( char ) ; // i.e. 'GET .kibana/' -> 'GET .kibana/_'
301314 }
302315
303- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
304- PageObjects . console . isAutocompleteVisible ( )
316+ await retry . waitFor (
317+ 'autocomplete to be visible' ,
318+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
305319 ) ;
306320 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
307321 } ) ;
@@ -317,8 +331,9 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
317331 log . debug ( 'Key type Ctrl+SPACE' ) ;
318332 await PageObjects . console . pressCtrlSpace ( ) ;
319333
320- await retry . waitFor ( 'autocomplete to be visible' , ( ) =>
321- PageObjects . console . isAutocompleteVisible ( )
334+ await retry . waitFor (
335+ 'autocomplete to be visible' ,
336+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
322337 ) ;
323338 expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
324339 } ) ;
@@ -438,7 +453,10 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
438453 await PageObjects . console . enterText ( `POST _query\n` ) ;
439454 await PageObjects . console . enterText ( `{\n\t"query": """` ) ;
440455 await PageObjects . console . sleepForDebouncePeriod ( ) ;
441- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
456+ await retry . waitFor (
457+ 'autocomplete to be visible' ,
458+ async ( ) => await PageObjects . console . isAutocompleteVisible ( )
459+ ) ;
442460 const suggestions = await PageObjects . console . getAllAutocompleteSuggestions ( ) ;
443461 expect ( suggestions ) . to . contain ( 'FROM' ) ;
444462 expect ( suggestions ) . to . contain ( 'ROW' ) ;
@@ -450,7 +468,7 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
450468 await PageObjects . console . enterText ( `{\n\t"script": """` ) ;
451469 await PageObjects . console . pressEnter ( ) ;
452470 await PageObjects . console . sleepForDebouncePeriod ( ) ;
453- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
471+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
454472 } ) ;
455473
456474 it ( 'does not suggest ESQL in other parts of the request' , async ( ) => {
@@ -459,8 +477,8 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
459477 await PageObjects . console . pressEnter ( ) ;
460478 await PageObjects . console . sleepForDebouncePeriod ( ) ;
461479 await PageObjects . console . promptAutocomplete ( ) ;
462- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
463- const suggestions = PageObjects . console . getAllAutocompleteSuggestions ( ) ;
480+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( true ) ;
481+ const suggestions = await PageObjects . console . getAllAutocompleteSuggestions ( ) ;
464482 expect ( suggestions ) . to . not . contain ( 'FROM' ) ;
465483 expect ( suggestions ) . to . not . contain ( 'ROW' ) ;
466484 expect ( suggestions ) . to . not . contain ( 'SHOW' ) ;
@@ -477,29 +495,29 @@ export default function ({ getService, getPageObjects }: FtrProviderContext) {
477495 await PageObjects . console . enterText ( `# GET /` ) ;
478496 await PageObjects . console . sleepForDebouncePeriod ( ) ;
479497
480- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
498+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
481499 } ) ;
482500
483501 it ( 'a simple double slash comment' , async ( ) => {
484502 await PageObjects . console . enterText ( `// GET /` ) ;
485503 await PageObjects . console . sleepForDebouncePeriod ( ) ;
486504
487- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
505+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
488506 } ) ;
489507
490508 it ( 'a single line block comment' , async ( ) => {
491509 await PageObjects . console . enterText ( `/* GET /` ) ;
492510 await PageObjects . console . sleepForDebouncePeriod ( ) ;
493511
494- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
512+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
495513 } ) ;
496514
497515 it ( 'a multiline block comment' , async ( ) => {
498516 await PageObjects . console . enterText ( `/*
499517 GET /` ) ;
500518 await PageObjects . console . sleepForDebouncePeriod ( ) ;
501519
502- expect ( PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
520+ expect ( await PageObjects . console . isAutocompleteVisible ( ) ) . to . be . eql ( false ) ;
503521 } ) ;
504522 } ) ;
505523 } ) ;
0 commit comments