@@ -278,7 +278,7 @@ describe('autocomplete-js', () => {
278278 } ) ;
279279 } ) ;
280280
281- test ( "doesn't render noResults template on no query when openOnFocus is false" , async ( ) => {
281+ test ( "doesn't render noResults template on empty query when openOnFocus is false" , async ( ) => {
282282 const container = document . createElement ( 'div' ) ;
283283 const panelContainer = document . createElement ( 'div' ) ;
284284
@@ -309,7 +309,7 @@ describe('autocomplete-js', () => {
309309
310310 const input = container . querySelector < HTMLInputElement > ( '.aa-Input' ) ;
311311
312- fireEvent . input ( input , { target : { value : '' } } ) ;
312+ fireEvent . focus ( input ) ;
313313
314314 await waitFor ( ( ) => {
315315 expect (
@@ -318,7 +318,47 @@ describe('autocomplete-js', () => {
318318 } ) ;
319319 } ) ;
320320
321- test ( 'render noResults template on query when openOnFocus is false' , async ( ) => {
321+ test ( 'renders noResults template on empty query when openOnFocus is true' , async ( ) => {
322+ const container = document . createElement ( 'div' ) ;
323+ const panelContainer = document . createElement ( 'div' ) ;
324+
325+ document . body . appendChild ( panelContainer ) ;
326+ autocomplete < { label : string } > ( {
327+ container,
328+ panelContainer,
329+ openOnFocus : true ,
330+ getSources ( ) {
331+ return [
332+ {
333+ sourceId : 'testSource' ,
334+ getItems ( ) {
335+ return [ ] ;
336+ } ,
337+ templates : {
338+ item ( { item } ) {
339+ return item . label ;
340+ } ,
341+ noResults ( ) {
342+ return 'No results template' ;
343+ } ,
344+ } ,
345+ } ,
346+ ] ;
347+ } ,
348+ } ) ;
349+
350+ const input = container . querySelector < HTMLInputElement > ( '.aa-Input' ) ;
351+
352+ fireEvent . focus ( input ) ;
353+
354+ await waitFor ( ( ) => {
355+ expect (
356+ panelContainer . querySelector < HTMLElement > ( '.aa-Panel' )
357+ ) . toHaveTextContent ( 'No results template' ) ;
358+ } ) ;
359+ } ) ;
360+
361+ test ( 'renders noResults template on query when openOnFocus is false' , async ( ) => {
322362 const container = document . createElement ( 'div' ) ;
323363 const panelContainer = document . createElement ( 'div' ) ;
324364
0 commit comments