mirror of
https://github.com/inaturalist/iNaturalistReactNative.git
synced 2026-06-18 20:50:54 -04:00
* Mock INatPaperProvider to remove warnings about wrong icon names in jest; closes #421 * Remove unnecessary paper provider mock * Add mocked views back to tests
44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
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>
|
|
<NavigationContainer>
|
|
{ component }
|
|
</NavigationContainer>
|
|
</INatPaperProvider>
|
|
</QueryClientProvider>
|
|
);
|
|
}
|
|
|
|
function renderAppWithComponent( component, update = null ) {
|
|
return renderComponent( <App>{ component }</App>, update );
|
|
}
|
|
|
|
export {
|
|
renderAppWithComponent,
|
|
renderComponent
|
|
};
|