diff --git a/packages/sanity/src/core/form/studio/FormBuilderInputErrorBoundary.test.tsx b/packages/sanity/src/core/form/studio/FormBuilderInputErrorBoundary.test.tsx
index dfb64748038..84b718a2660 100644
--- a/packages/sanity/src/core/form/studio/FormBuilderInputErrorBoundary.test.tsx
+++ b/packages/sanity/src/core/form/studio/FormBuilderInputErrorBoundary.test.tsx
@@ -1,24 +1,15 @@
import {beforeAll, describe, expect, it, jest} from '@jest/globals'
-import {studioTheme, ThemeProvider} from '@sanity/ui'
import {render, screen} from '@testing-library/react'
+import {type SanityClient} from 'sanity'
-import {LocaleProviderBase} from '../../i18n/components/LocaleProvider'
-import {prepareI18n} from '../../i18n/i18nConfig'
-import {usEnglishLocale} from '../../i18n/locales'
-import {useSource} from '../../studio/source'
+import {createMockSanityClient} from '../../../../test/mocks/mockSanityClient'
+import {createTestProvider} from '../../../../test/testUtils/TestProvider'
import {FormBuilderInputErrorBoundary} from './FormBuilderInputErrorBoundary'
-// Mock dependencies
-jest.mock('../../studio/source', () => ({
- useSource: jest.fn(),
-}))
-
jest.mock('use-hot-module-reload', () => ({
useHotModuleReload: jest.fn(),
}))
-const useSourceMock = useSource as jest.Mock
-
describe('FormBuilderInputErrorBoundary', () => {
beforeAll(() => {
jest.clearAllMocks()
@@ -36,32 +27,29 @@ describe('FormBuilderInputErrorBoundary', () => {
it('calls onStudioError when an error is caught', async () => {
const onStudioError = jest.fn()
- useSourceMock.mockReturnValue({onStudioError})
const ThrowErrorComponent = () => {
throw new Error('An EXPECTED, testing error occurred!')
}
- const locales = [usEnglishLocale]
- const {i18next} = prepareI18n({
- projectId: 'test',
- dataset: 'test',
- name: 'test',
+ const client = createMockSanityClient() as unknown as SanityClient
+
+ const TestProvider = await createTestProvider({
+ client,
+ config: {
+ name: 'default',
+ projectId: 'test',
+ dataset: 'test',
+ onStudioError,
+ },
})
render(
-
-
-
-
-
-
- ,
+
+
+
+
+ ,
)
expect(onStudioError).toHaveBeenCalledTimes(1)
diff --git a/packages/sanity/src/core/studio/workspaceLoader/WorkspaceRouterProvider.test.tsx b/packages/sanity/src/core/studio/workspaceLoader/WorkspaceRouterProvider.test.tsx
index c4635f1efe9..0c9cb018ef0 100644
--- a/packages/sanity/src/core/studio/workspaceLoader/WorkspaceRouterProvider.test.tsx
+++ b/packages/sanity/src/core/studio/workspaceLoader/WorkspaceRouterProvider.test.tsx
@@ -1,10 +1,10 @@
import {describe, expect, it, jest} from '@jest/globals'
-import {ErrorBoundary, studioTheme, ThemeProvider} from '@sanity/ui'
+import {ErrorBoundary} from '@sanity/ui'
import {render, screen} from '@testing-library/react'
+import {type SanityClient} from 'sanity'
-import {LocaleProviderBase, usEnglishLocale} from '../../i18n'
-import {prepareI18n} from '../../i18n/i18nConfig'
-import {useSource} from '../source'
+import {createMockSanityClient} from '../../../../test/mocks/mockSanityClient'
+import {createTestProvider} from '../../../../test/testUtils/TestProvider'
import {WorkspaceRouterProvider} from './WorkspaceRouterProvider'
jest.mock('../router/RouterHistoryContext', () => ({
@@ -14,10 +14,6 @@ jest.mock('../router/RouterHistoryContext', () => ({
}),
}))
-jest.mock('../source', () => ({
- useSource: jest.fn(),
-}))
-
jest.mock('../router', () => ({
createRouter: () => ({
getBasePath: jest.fn(),
@@ -36,8 +32,6 @@ jest.mock('./WorkspaceRouterProvider', () => ({
useRouterFromWorkspaceHistory: jest.fn(),
}))
-const useSourceMock = useSource as jest.Mock
-
describe('WorkspaceRouterProvider', () => {
const LoadingComponent = () =>
Loading...
const children = Children
@@ -76,37 +70,34 @@ describe('WorkspaceRouterProvider', () => {
expect(screen.getByText('Children')).toBeInTheDocument()
})
- it('calls onStudioError when an error is caught', () => {
+ it('calls onStudioError when an error is caught', async () => {
const onStudioError = jest.fn()
- useSourceMock.mockReturnValue({onStudioError})
const ThrowErrorComponent = () => {
throw new Error('An EXPECTED, testing error occurred!')
}
- const locales = [usEnglishLocale]
- const {i18next} = prepareI18n({
- projectId: 'test',
- dataset: 'test',
- name: 'test',
+ const client = createMockSanityClient() as unknown as SanityClient
+
+ const TestProvider = await createTestProvider({
+ client,
+ config: {
+ name: 'default',
+ projectId: 'test',
+ dataset: 'test',
+ onStudioError,
+ },
})
render(
-
-
- {/* prevents thrown error from breaking the test */}
- <>>}>
-
-
-
-
-
- ,
+
+ {/* prevents thrown error from breaking the test */}
+ <>>}>
+
+
+
+
+ ,
)
expect(onStudioError).toHaveBeenCalledTimes(1)