Files
iNaturalistReactNative/tests/helpers/render.js
Chris 98a6663fe1 561 fix hidden bottom sheet (#563)
* Show bottom sheet over tab bar

* use present method

* Ensure bottom sheet works elsewhere

* Ensure bottom sheet works elsewhere

* Add provider to test

* lint

* Fix tests

* Merge fixes

---------

Co-authored-by: Amanda Bullington <35536439+albullington@users.noreply.github.com>
Co-authored-by: Amanda Bullington <albullington@gmail.com>
2023-04-04 12:30:07 -07:00

47 lines
1.3 KiB
JavaScript

import { BottomSheetModalProvider } from "@gorhom/bottom-sheet";
import { NavigationContainer } from "@react-navigation/native";
import {
QueryClient,
QueryClientProvider
} from "@tanstack/react-query";
import { render } from "@testing-library/react-native";
import App from "components/App";
import INatPaperProvider from "providers/INatPaperProvider";
import React from "react";
const queryClient = new QueryClient( {
defaultOptions: {
queries: {
// No need to do default retries in tests
retry: false,
// Prevent `Jest did not exit one second after the test run has completed.` error
// https://react-query-v3.tanstack.com/guides/testing#set-cachetime-to-infinity-with-jest
cacheTime: Infinity
}
}
} );
function renderComponent( component, update = null ) {
const renderMethod = update || render;
return renderMethod(
<QueryClientProvider client={queryClient}>
<INatPaperProvider>
<BottomSheetModalProvider>
<NavigationContainer>
{ component }
</NavigationContainer>
</BottomSheetModalProvider>
</INatPaperProvider>
</QueryClientProvider>
);
}
function renderAppWithComponent( component, update = null ) {
return renderComponent( <App>{ component }</App>, update );
}
export {
renderAppWithComponent,
renderComponent
};