@@ -115,4 +115,32 @@ test.describe.serial('message-composer', () => {
115115 await expect ( poHomeChannel . composerBoxPopup . getByText ( 'rocket.cat' ) ) . toBeVisible ( ) ;
116116 } ) ;
117117 } ) ;
118+
119+ test . describe ( 'audio recorder' , ( ) => {
120+ test ( 'should open audio recorder' , async ( ) => {
121+ await poHomeChannel . sidenav . openChat ( targetChannel ) ;
122+ await poHomeChannel . composerToolbar . getByRole ( 'button' , { name : 'Audio message' , exact : true } ) . click ( ) ;
123+
124+ await expect ( poHomeChannel . audioRecorder ) . toBeVisible ( ) ;
125+ } ) ;
126+
127+ test ( 'should stop recording when clicking on cancel' , async ( ) => {
128+ await poHomeChannel . sidenav . openChat ( targetChannel ) ;
129+ await poHomeChannel . composerToolbar . getByRole ( 'button' , { name : 'Audio message' , exact : true } ) . click ( ) ;
130+ await expect ( poHomeChannel . audioRecorder ) . toBeVisible ( ) ;
131+
132+ await poHomeChannel . audioRecorder . getByRole ( 'button' , { name : 'Cancel recording' , exact : true } ) . click ( ) ;
133+ await expect ( poHomeChannel . audioRecorder ) . not . toBeVisible ( ) ;
134+ } ) ;
135+
136+ test ( 'should open file modal when clicking on "Finish recording"' , async ( { page } ) => {
137+ await poHomeChannel . sidenav . openChat ( targetChannel ) ;
138+ await poHomeChannel . composerToolbar . getByRole ( 'button' , { name : 'Audio message' , exact : true } ) . click ( ) ;
139+ await expect ( poHomeChannel . audioRecorder ) . toBeVisible ( ) ;
140+
141+ await page . waitForTimeout ( 1000 ) ;
142+ await poHomeChannel . audioRecorder . getByRole ( 'button' , { name : 'Finish Recording' , exact : true } ) . click ( ) ;
143+ await expect ( poHomeChannel . content . fileUploadModal ) . toBeVisible ( ) ;
144+ } ) ;
145+ } ) ;
118146} ) ;
0 commit comments