File tree Expand file tree Collapse file tree
src/authz-module/audit-user Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -496,4 +496,75 @@ describe('AuditUserPage', () => {
496496 expect ( screen . getByText ( / t h i s i s t h e u s e r ' s o n l y r o l e / i) ) . toBeInTheDocument ( ) ;
497497 } ) ;
498498 } ) ;
499+
500+ it ( 'handles undefined data from useUserAssignedRoles with default destructuring' , async ( ) => {
501+ ( useUserAccount as jest . Mock ) . mockReturnValue ( {
502+ data : mockUser ,
503+ isLoading : false ,
504+ isError : false ,
505+ error : null ,
506+ } ) ;
507+
508+ ( useUserAssignedRoles as jest . Mock ) . mockReturnValue ( {
509+ data : undefined , // This triggers the default destructuring assignment
510+ isLoading : false ,
511+ isError : false ,
512+ error : null ,
513+ } ) ;
514+
515+ renderWithRouter ( ) ;
516+
517+ await waitFor ( ( ) => {
518+ expect ( screen . getByText ( 'johndoe' , { selector : 'li[aria-current="page"]' } ) ) . toBeInTheDocument ( ) ;
519+ expect ( screen . getByRole ( 'table' ) ) . toBeInTheDocument ( ) ;
520+ } ) ;
521+ } ) ;
522+
523+ it ( 'navigates to home when user not found and isErrorUser is false' , async ( ) => {
524+ ( useUserAccount as jest . Mock ) . mockReturnValue ( {
525+ data : null ,
526+ isLoading : false ,
527+ isError : false ,
528+ error : null ,
529+ } ) ;
530+
531+ ( useUserAssignedRoles as jest . Mock ) . mockReturnValue ( {
532+ data : mockAssignments ,
533+ isLoading : false ,
534+ isError : false ,
535+ error : null ,
536+ } ) ;
537+
538+ renderWithRouter ( ) ;
539+
540+ await waitFor ( ( ) => {
541+ expect ( screen . getByText ( 'Home Page' ) ) . toBeInTheDocument ( ) ;
542+ } ) ;
543+ } ) ;
544+
545+ it ( 'navigates to home when user not found and error is 404' , async ( ) => {
546+ ( useUserAccount as jest . Mock ) . mockReturnValue ( {
547+ data : null ,
548+ isLoading : false ,
549+ isError : true ,
550+ error : {
551+ customAttributes : {
552+ httpErrorStatus : 404 ,
553+ } ,
554+ } ,
555+ } ) ;
556+
557+ ( useUserAssignedRoles as jest . Mock ) . mockReturnValue ( {
558+ data : mockAssignments ,
559+ isLoading : false ,
560+ isError : false ,
561+ error : null ,
562+ } ) ;
563+
564+ renderWithRouter ( ) ;
565+
566+ await waitFor ( ( ) => {
567+ expect ( screen . getByText ( 'Home Page' ) ) . toBeInTheDocument ( ) ;
568+ } ) ;
569+ } ) ;
499570} ) ;
You can’t perform that action at this time.
0 commit comments