@@ -7,39 +7,25 @@ import {
77import { isSafari } from '../../../utils/browser' ;
88import { getParsedVoiceAudioFileInfo } from '../utils' ;
99
10- describe ( 'getParsedVoiceAudioFileInfo' , ( ) => {
11- const originalUserAgent = navigator . userAgent ;
10+ jest . mock ( '../../../utils/browser' ) ;
1211
12+ describe ( 'getParsedVoiceAudioFileInfo' , ( ) => {
1313 afterEach ( ( ) => {
14- Object . defineProperty ( navigator , 'userAgent' , {
15- value : originalUserAgent ,
16- writable : false ,
17- } ) ;
14+ jest . clearAllMocks ( ) ;
1815 } ) ;
1916
2017 it ( 'should return VOICE_MESSAGE_MIME_TYPE__XM4A for Safari and m4a MIME type' , ( ) => {
21- const safariUserAgent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15' ;
22-
23- Object . defineProperty ( navigator , 'userAgent' , {
24- value : safariUserAgent ,
25- writable : true ,
26- } ) ;
18+ ( isSafari as jest . Mock ) . mockReturnValue ( true ) ;
2719
28- expect ( isSafari ( safariUserAgent ) ) . toBe ( true ) ;
2920 expect ( getParsedVoiceAudioFileInfo ( 'audio/mp3' ) . mimeType ) . toBe ( VOICE_MESSAGE_MIME_TYPE ) ;
3021 expect ( getParsedVoiceAudioFileInfo ( 'audio/m4a' ) . mimeType ) . toBe ( VOICE_MESSAGE_MIME_TYPE__XM4A ) ;
3122 expect ( getParsedVoiceAudioFileInfo ( 'audio/mp3' ) . name ) . toBe ( VOICE_MESSAGE_FILE_NAME ) ;
3223 expect ( getParsedVoiceAudioFileInfo ( 'audio/m4a' ) . name ) . toBe ( VOICE_MESSAGE_FILE_NAME__XM4A ) ;
3324 } ) ;
3425
3526 it ( 'should return VOICE_MESSAGE_MIME_TYPE for non-Safari browser and m4a MIME type' , ( ) => {
36- const chromeUserAgent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36' ;
37- Object . defineProperty ( navigator , 'userAgent' , {
38- value : chromeUserAgent ,
39- writable : true ,
40- } ) ;
27+ ( isSafari as jest . Mock ) . mockReturnValue ( false ) ;
4128
42- expect ( isSafari ( chromeUserAgent ) ) . toBe ( false ) ;
4329 expect ( getParsedVoiceAudioFileInfo ( 'audio/mp3' ) . mimeType ) . toBe ( VOICE_MESSAGE_MIME_TYPE ) ;
4430 expect ( getParsedVoiceAudioFileInfo ( 'audio/m4a' ) . mimeType ) . toBe ( VOICE_MESSAGE_MIME_TYPE ) ;
4531 expect ( getParsedVoiceAudioFileInfo ( 'audio/mp3' ) . name ) . toBe ( VOICE_MESSAGE_FILE_NAME ) ;
0 commit comments