@@ -47,12 +47,41 @@ test.describe("Header section of the room list", () => {
4747 await app . closeDialog ( ) ;
4848 } ) ;
4949
50- test ( "should render the header section for a space" , async ( { page, app, user } ) => {
50+ test ( "should render the header section for a space" , { tag : "@screenshot" } , async ( { page, app, user } ) => {
5151 await app . client . createSpace ( { name : "MySpace" } ) ;
5252 await page . getByRole ( "button" , { name : "MySpace" } ) . click ( ) ;
5353
5454 const roomListHeader = getHeaderSection ( page ) ;
55+ await expect ( roomListHeader ) . toMatchScreenshot ( "room-list-space-header.png" ) ;
56+
5557 await expect ( roomListHeader . getByRole ( "heading" , { name : "MySpace" } ) ) . toBeVisible ( ) ;
5658 await expect ( roomListHeader . getByRole ( "button" , { name : "Add" } ) ) . toBeVisible ( ) ;
59+
60+ const spaceMenu = roomListHeader . getByRole ( "button" , { name : "Open space menu" } ) ;
61+ await spaceMenu . click ( ) ;
62+
63+ await expect ( page . getByRole ( "menu" ) ) . toMatchScreenshot ( "room-list-header-space-menu.png" ) ;
64+
65+ // It should open the space home
66+ await page . getByRole ( "menuitem" , { name : "Space home" } ) . click ( ) ;
67+ await expect ( page . getByRole ( "main" ) . getByRole ( "heading" , { name : "MySpace" } ) ) . toBeVisible ( ) ;
68+
69+ // It should open the invite dialog
70+ await spaceMenu . click ( ) ;
71+ await page . getByRole ( "menuitem" , { name : "Invite" } ) . click ( ) ;
72+ await expect ( page . getByRole ( "heading" , { name : "Invite to MySpace" } ) ) . toBeVisible ( ) ;
73+ await app . closeDialog ( ) ;
74+
75+ // It should open the space preferences
76+ await spaceMenu . click ( ) ;
77+ await page . getByRole ( "menuitem" , { name : "Preferences" } ) . click ( ) ;
78+ await expect ( page . getByRole ( "heading" , { name : "Preferences" } ) ) . toBeVisible ( ) ;
79+ await app . closeDialog ( ) ;
80+
81+ // It should open the space settings
82+ await spaceMenu . click ( ) ;
83+ await page . getByRole ( "menuitem" , { name : "Space Settings" } ) . click ( ) ;
84+ await expect ( page . getByRole ( "heading" , { name : "Settings" } ) ) . toBeVisible ( ) ;
85+ await app . closeDialog ( ) ;
5786 } ) ;
5887} ) ;
0 commit comments