import React from 'react' import { mount } from 'enzyme' import { useReducedMotion } from './index' let TestComponent describe('useReducedMotion', () => { beforeEach(() => { TestComponent = () => { const reducedMotion = useReducedMotion() return reducedMotion ?
reduced
:
basic
} }) it('Should call match media with "prefers-reduced-motion" and return true when it matches', () => { window.matchMedia = jest.fn().mockImplementation(() => ({ matches: true, })) const wrapper = mount() expect(window.matchMedia).toHaveBeenCalledWith('(prefers-reduced-motion)') expect(wrapper.find('div').text()).toEqual('reduced') }) it('Should call match media with "prefers-reduced-motion" and return false when it does not match', () => { window.matchMedia = jest.fn().mockImplementation(() => ({ matches: false, })) const wrapper = mount() expect(window.matchMedia).toHaveBeenCalledWith('(prefers-reduced-motion)') expect(wrapper.find('div').text()).toEqual('basic') }) })