window.navigator.userAgentをVitestでモックする
やりたいこと
window.navigator.userAgent
をVitestでモックしたい。
window.navigator.userAgent
について
↓を読みましょう
https://developer.mozilla.org/ja/docs/Web/API/Navigator/userAgent
Vitestでグローバルなモックを書く
今回のケースではvi.stubGlobal()
が使える。
モックをリセットする時はvi.restoreAllMocks()
を使う。
本題: Vitestでwindow.navigator.userAgent
をモックする
基本的にこれを参考にする。
describe('window.navigator.userAgent mock test', () => { beforeEach(() => { vi.restoreAllMocks() })
test('should be passed', () => { const userAgent = 'test' vi.stubGlobal('navigator', { userAgent }) expect(window.navigator.userAgent).toBe(userAgent) })})