@@ -20,8 +20,10 @@ import {
2020 LinkDefaultShowView ,
2121 LinkMissingView ,
2222 LinkFalse ,
23- MissingReferenceIdEmptyTextTranslation ,
2423 MissingReferenceEmptyText ,
24+ MissingReferenceIdEmptyTextTranslation ,
25+ MissingReferenceIdEmpty ,
26+ MissingReferenceIdEmptyTranslation ,
2527 SXLink ,
2628 SXNoLink ,
2729 SlowAccessControl ,
@@ -293,29 +295,48 @@ describe('<ReferenceField />', () => {
293295 } ) ;
294296 } ) ;
295297
296- it ( 'should display the emptyText if the field is empty' , ( ) => {
297- render (
298- < ThemeProvider theme = { theme } >
299- < CoreAdminContext dataProvider = { testDataProvider ( ) } >
300- < ReferenceField
301- record = { { id : 123 } }
302- resource = "comments"
303- // @ts -expect-error source prop does not have a valid value
304- source = "postId"
305- reference = "posts"
306- emptyText = "EMPTY"
307- >
308- < TextField source = "title" />
309- </ ReferenceField >
310- </ CoreAdminContext >
311- </ ThemeProvider >
312- ) ;
313- expect ( screen . getByText ( 'EMPTY' ) ) . not . toBeNull ( ) ;
298+ describe ( 'emptyText' , ( ) => {
299+ it ( 'should display the emptyText if the field is empty' , ( ) => {
300+ render (
301+ < ThemeProvider theme = { theme } >
302+ < CoreAdminContext dataProvider = { testDataProvider ( ) } >
303+ < ReferenceField
304+ record = { { id : 123 } }
305+ resource = "comments"
306+ // @ts -expect-error source prop does not have a valid value
307+ source = "postId"
308+ reference = "posts"
309+ emptyText = "EMPTY"
310+ >
311+ < TextField source = "title" />
312+ </ ReferenceField >
313+ </ CoreAdminContext >
314+ </ ThemeProvider >
315+ ) ;
316+ expect ( screen . getByText ( 'EMPTY' ) ) . not . toBeNull ( ) ;
317+ } ) ;
318+
319+ it ( 'should display the emptyText if there is no reference' , async ( ) => {
320+ render ( < MissingReferenceEmptyText /> ) ;
321+ await screen . findByText ( 'no detail' ) ;
322+ } ) ;
323+
324+ it ( 'should translate emptyText' , async ( ) => {
325+ render ( < MissingReferenceIdEmptyTextTranslation /> ) ;
326+
327+ expect ( await screen . findByText ( 'Not found' ) ) . not . toBeNull ( ) ;
328+ } ) ;
314329 } ) ;
315330
316- it ( 'should display the emptyText if there is no reference' , async ( ) => {
317- render ( < MissingReferenceEmptyText /> ) ;
318- await screen . findByText ( 'no detail' ) ;
331+ describe ( 'empty' , ( ) => {
332+ it ( 'should render the empty prop when the record is not found' , async ( ) => {
333+ render ( < MissingReferenceIdEmpty /> ) ;
334+ await screen . findByText ( 'no detail' ) ;
335+ } ) ;
336+ it ( 'should translate empty if it is a string' , async ( ) => {
337+ render ( < MissingReferenceIdEmptyTranslation /> ) ;
338+ await screen . findByText ( 'Not found' ) ;
339+ } ) ;
319340 } ) ;
320341
321342 it ( 'should use record from RecordContext' , async ( ) => {
@@ -582,12 +603,6 @@ describe('<ReferenceField />', () => {
582603 expect ( await screen . findByText ( 'novel' ) ) . not . toBeNull ( ) ;
583604 } ) ;
584605
585- it ( 'should translate emptyText' , async ( ) => {
586- render ( < MissingReferenceIdEmptyTextTranslation /> ) ;
587-
588- expect ( await screen . findByText ( 'Not found' ) ) . not . toBeNull ( ) ;
589- } ) ;
590-
591606 it ( 'should accept a queryOptions prop' , async ( ) => {
592607 const dataProvider = testDataProvider ( {
593608 getMany : jest . fn ( ) . mockResolvedValue ( {
0 commit comments