mirror of
https://github.com/joinmarket-webui/jam.git
synced 2026-08-20 13:28:21 +02:00
* dev: add ServiceConfigContext * fix: load config values if absent * dev: only load config vals when needed * dev: reset service config ref if wallet changed * dev: export useLoadConfigValue method of config context * refactor: extract fetch method from ServiceConfigContext
41 lines
1.4 KiB
TypeScript
41 lines
1.4 KiB
TypeScript
import React from 'react'
|
|
import { render, RenderOptions } from '@testing-library/react'
|
|
import { BrowserRouter } from 'react-router-dom'
|
|
import { I18nextProvider } from 'react-i18next'
|
|
import { WalletProvider } from './context/WalletContext'
|
|
import { ServiceInfoProvider } from './context/ServiceInfoContext'
|
|
import { ServiceConfigProvider } from './context/ServiceConfigContext'
|
|
// @ts-ignore
|
|
import { SettingsProvider } from './context/SettingsContext'
|
|
// @ts-ignore
|
|
import { WebsocketProvider } from './context/WebsocketContext'
|
|
import i18n from './i18n/testConfig'
|
|
|
|
const AllTheProviders = ({ children }: { children: React.ReactElement }) => {
|
|
return (
|
|
<React.StrictMode>
|
|
<BrowserRouter>
|
|
<I18nextProvider i18n={i18n}>
|
|
<SettingsProvider>
|
|
<WalletProvider>
|
|
<ServiceConfigProvider>
|
|
<WebsocketProvider>
|
|
<ServiceInfoProvider>{children}</ServiceInfoProvider>
|
|
</WebsocketProvider>
|
|
</ServiceConfigProvider>
|
|
</WalletProvider>
|
|
</SettingsProvider>
|
|
</I18nextProvider>
|
|
</BrowserRouter>
|
|
</React.StrictMode>
|
|
)
|
|
}
|
|
|
|
const customRender = (ui: React.ReactElement, options?: RenderOptions) =>
|
|
render(ui, { wrapper: AllTheProviders, ...options })
|
|
|
|
// re-export everything
|
|
export * from '@testing-library/react'
|
|
|
|
// override render method
|
|
export { customRender as render }
|