@@ -66,12 +66,16 @@ test.describe.serial('Presence', () => {
6666 } ) ;
6767
6868 test ( 'should not save custom status as `undefined` if nothing changes' , async ( { page } ) => {
69- await test . step ( 'change to empty status' , async ( ) => {
70- await poHomeChannel . navbar . changeUserCustomStatus ( ) ;
71- expect ( await page . evaluate ( ( ) => localStorage . getItem ( 'fuselage-localStorage-Local_Custom_Status' ) ) ) . not . toBe ( 'undefined' ) ;
69+ await poHomeChannel . navbar . openEditStatusModal ( ) ;
70+
71+ const { editStatusModal } = poHomeChannel . navbar ;
72+
73+ await test . step ( 'Save stays disabled while the form is untouched' , async ( ) => {
74+ await expect ( editStatusModal . btnSubmit ) . toBeDisabled ( ) ;
7275 } ) ;
73- await test . step ( 'save without changes' , async ( ) => {
74- await poHomeChannel . navbar . changeUserCustomStatus ( ) ;
76+
77+ await test . step ( 'closing without changes leaves stored status untouched' , async ( ) => {
78+ await editStatusModal . close ( ) ;
7579 expect ( await page . evaluate ( ( ) => localStorage . getItem ( 'fuselage-localStorage-Local_Custom_Status' ) ) ) . not . toBe ( 'undefined' ) ;
7680 } ) ;
7781 } ) ;
@@ -107,6 +111,8 @@ test.describe.serial('Presence', () => {
107111
108112 const { editStatusModal } = poHomeChannel . navbar ;
109113
114+ await editStatusModal . setStatusMessage ( 'available' ) ;
115+
110116 await editStatusModal . selectDuration ( 'Choose date and time' ) ;
111117 await expect ( editStatusModal . customDateInput ) . toBeVisible ( ) ;
112118 await expect ( editStatusModal . customTimeInput ) . toBeVisible ( ) ;
@@ -123,6 +129,8 @@ test.describe.serial('Presence', () => {
123129
124130 const { editStatusModal } = poHomeChannel . navbar ;
125131
132+ await editStatusModal . setStatusMessage ( 'available' ) ;
133+
126134 await editStatusModal . selectDuration ( 'Choose date and time' ) ;
127135
128136 const today = new Date ( ) . toLocaleDateString ( 'en-CA' ) ;
@@ -140,6 +148,8 @@ test.describe.serial('Presence', () => {
140148
141149 const { editStatusModal } = poHomeChannel . navbar ;
142150
151+ await editStatusModal . setStatusMessage ( 'available' ) ;
152+
143153 await editStatusModal . selectDuration ( 'Choose date and time' ) ;
144154 await editStatusModal . customDateInput . fill ( '' ) ;
145155 await editStatusModal . btnSubmit . click ( ) ;
@@ -171,7 +181,7 @@ test.describe.serial('Presence', () => {
171181 } ) ;
172182
173183 await test . step ( 'clear status' , async ( ) => {
174- await poHomeChannel . navbar . changeUserCustomStatus ( ' ') ;
184+ await poHomeChannel . navbar . changeUserStatus ( 'online ') ;
175185 } ) ;
176186 } ) ;
177187
@@ -192,7 +202,7 @@ test.describe.serial('Presence', () => {
192202 } ) ;
193203
194204 await test . step ( 'clear status and verify expiration is removed' , async ( ) => {
195- await poHomeChannel . navbar . changeUserCustomStatus ( ' ') ;
205+ await poHomeChannel . navbar . changeUserStatus ( 'online ') ;
196206
197207 await poHomeChannel . navbar . btnUserMenu . click ( ) ;
198208 await expect ( poHomeChannel . navbar . userMenu ) . not . toContainText ( 'Until' ) ;
0 commit comments