From 7f9d105d8c4ccdff62fb39145115356639b528ce Mon Sep 17 00:00:00 2001 From: Alf Eaton Date: Tue, 30 Jan 2024 15:36:06 +0000 Subject: [PATCH] Ensure FileTreeProvider stubbed props don't change in Cypress tests (#16758) GitOrigin-RevId: 01c7fefdef8b28af0b52007209785b478e5d8600 --- .../file-tree/helpers/file-tree-provider.tsx | 22 ++++++++++++------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/services/web/test/frontend/features/file-tree/helpers/file-tree-provider.tsx b/services/web/test/frontend/features/file-tree/helpers/file-tree-provider.tsx index 5996b71145..5af4b81333 100644 --- a/services/web/test/frontend/features/file-tree/helpers/file-tree-provider.tsx +++ b/services/web/test/frontend/features/file-tree/helpers/file-tree-provider.tsx @@ -1,17 +1,23 @@ -import { FC } from 'react' +import { ComponentProps, FC, useRef } from 'react' import FileTreeContext from '@/features/file-tree/components/file-tree-context' export const FileTreeProvider: FC<{ refProviders?: Record }> = ({ children, refProviders = {} }) => { + const propsRef = + useRef, 'refProviders'>>() + + if (propsRef.current === undefined) { + propsRef.current = { + reindexReferences: cy.stub().as('reindexReferences'), + setRefProviderEnabled: cy.stub().as('setRefProviderEnabled'), + setStartedFreeTrial: cy.stub().as('setStartedFreeTrial'), + onSelect: cy.stub(), + } + } + return ( - {}} - > + <>{children} )