diff --git a/web/app/components/plugins/plugin-detail-panel/subscription-list/create/__tests__/common-modal.spec.tsx b/web/app/components/plugins/plugin-detail-panel/subscription-list/create/__tests__/common-modal.spec.tsx
index b9953bd249..ef9ad616af 100644
--- a/web/app/components/plugins/plugin-detail-panel/subscription-list/create/__tests__/common-modal.spec.tsx
+++ b/web/app/components/plugins/plugin-detail-panel/subscription-list/create/__tests__/common-modal.spec.tsx
@@ -1333,12 +1333,9 @@ describe('CommonCreateModal', () => {
mockVerifyCredentials.mockImplementation((params, { onSuccess }) => {
onSuccess()
})
+ const builder = createMockSubscriptionBuilder()
- render()
-
- await waitFor(() => {
- expect(mockCreateBuilder).toHaveBeenCalled()
- })
+ render()
fireEvent.click(screen.getByTestId('modal-confirm'))
@@ -1975,8 +1972,8 @@ describe('CommonCreateModal', () => {
})
mockUsePluginStore.mockReturnValue(detailWithCredentials)
- // Make createBuilder slow
- mockCreateBuilder.mockImplementation(() => new Promise(resolve => setTimeout(resolve, 1000)))
+ const createBuilderPromise = Promise.withResolvers<{ subscription_builder: TriggerSubscriptionBuilder }>()
+ mockCreateBuilder.mockImplementation(() => createBuilderPromise.promise)
render()
@@ -1985,6 +1982,14 @@ describe('CommonCreateModal', () => {
// Should still attempt to verify
expect(screen.getByTestId('modal')).toBeInTheDocument()
+
+ createBuilderPromise.resolve({
+ subscription_builder: createMockSubscriptionBuilder(),
+ })
+
+ await waitFor(() => {
+ expect(mockCreateBuilder).toHaveBeenCalled()
+ })
})
})
diff --git a/web/vite.config.ts b/web/vite.config.ts
index 665d2d0a5f..b1e655199d 100644
--- a/web/vite.config.ts
+++ b/web/vite.config.ts
@@ -77,6 +77,7 @@ export default defineConfig(({ mode }) => {
test: {
environment: 'jsdom',
globals: true,
+ detectAsyncLeaks: true,
setupFiles: ['./vitest.setup.ts'],
coverage: {
provider: 'v8',