Files
Verso/services/web/test/frontend/features/subscription/helpers/render-with-subscription-dash-context.tsx
T
Simon GardnerandCopybot d4fe9cf34b Update unit tests for ActiveSubscription
GitOrigin-RevId: 181f5a097fff2fa31ed11d39b76f40c9a4b4ca31
2025-09-10 08:05:25 +00:00

40 lines
1.1 KiB
TypeScript

import { render } from '@testing-library/react'
import _ from 'lodash'
import { SubscriptionDashboardProvider } from '../../../../../frontend/js/features/subscription/context/subscription-dashboard-context'
import fetchMock from 'fetch-mock'
import { SplitTestProvider } from '@/shared/context/split-test-context'
import { MetaTag } from '@/utils/meta'
import { setupSubscriptionDashContext } from './setup-subscription-dash-context'
export function renderWithSubscriptionDashContext(
component: React.ReactElement,
options?: {
metaTags?: MetaTag[]
recurlyNotLoaded?: boolean
queryingRecurly?: boolean
currencyCode?: string
}
) {
const SubscriptionDashboardProviderWrapper = ({
children,
}: {
children: React.ReactNode
}) => (
<SplitTestProvider>
<SubscriptionDashboardProvider>{children}</SubscriptionDashboardProvider>
</SplitTestProvider>
)
setupSubscriptionDashContext(options)
return render(component, {
wrapper: SubscriptionDashboardProviderWrapper,
})
}
export function cleanUpContext() {
// @ts-ignore
delete global.recurly
fetchMock.removeRoutes().clearHistory()
}