Massive/mock-providers.tsx

31 lines
852 B
TypeScript

import { NavigationContainer } from '@react-navigation/native'
import React from 'react'
import {
DarkTheme,
DefaultTheme,
Provider as PaperProvider,
} from 'react-native-paper'
import MaterialIcon from 'react-native-vector-icons/MaterialIcons'
import { ThemeContext } from './use-theme'
export const MockProviders = ({
children,
}: {
children: JSX.Element | JSX.Element[]
}) => (
<PaperProvider settings={{ icon: (props) => <MaterialIcon {...props} /> }}>
<ThemeContext.Provider
value={{
theme: 'system',
setTheme: jest.fn(),
lightColor: DefaultTheme.colors.primary,
darkColor: DarkTheme.colors.primary,
setLightColor: jest.fn(),
setDarkColor: jest.fn(),
}}
>
<NavigationContainer>{children}</NavigationContainer>
</ThemeContext.Provider>
</PaperProvider>
)