46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
import { act, render, screen, waitFor } from '@testing-library/react'
|
|
import MatchMediaMock from 'jest-matchmedia-mock';
|
|
|
|
import { createRemixStub, RemixStubProps } from "@remix-run/testing"
|
|
import App from './root'
|
|
import React from 'react'
|
|
let RemixStub: (props: RemixStubProps) => React.JSX.Element
|
|
|
|
describe("root", () => {
|
|
beforeEach(() => {
|
|
RemixStub = createRemixStub([
|
|
{
|
|
path: "/",
|
|
meta: () => ([]),
|
|
links: () => ([]),
|
|
loader: () => ({ isSupported: true}),
|
|
Component: App
|
|
}
|
|
])
|
|
})
|
|
|
|
let matchMedia: MatchMediaMock
|
|
|
|
beforeAll(() => {
|
|
matchMedia = new MatchMediaMock();
|
|
})
|
|
|
|
afterEach(() => {
|
|
matchMedia.clear();
|
|
})
|
|
|
|
describe("when user is on iOS", () => {
|
|
describe("version 16.4 or higher", () => {
|
|
describe("and tack up now is not already installed on their device", () => {
|
|
test("they are instructed to install tack up now", async () => {
|
|
render(<RemixStub/>)
|
|
|
|
await waitFor(() => screen.findByText<HTMLElement>(/Install/), { timeout: 2000 })
|
|
|
|
expect(true).toBe(true)
|
|
})
|
|
})
|
|
})
|
|
})
|
|
})
|