From eda294c3547f6dc942b069a5678b2b0cdf05c327 Mon Sep 17 00:00:00 2001 From: ElevateBart Date: Fri, 9 Jul 2021 14:55:51 -0500 Subject: [PATCH] fix(vite): autorefresh new spec files --- npm/vite-dev-server/src/makeCypressPlugin.ts | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/npm/vite-dev-server/src/makeCypressPlugin.ts b/npm/vite-dev-server/src/makeCypressPlugin.ts index 93344f28a645..8393d01281be 100644 --- a/npm/vite-dev-server/src/makeCypressPlugin.ts +++ b/npm/vite-dev-server/src/makeCypressPlugin.ts @@ -21,15 +21,28 @@ const INIT_FILEPATH = resolve(__dirname, '../client/initCypressTests.js') const HMR_DEPENDENCY_LOOKUP_MAX_ITERATION = 50 +function getSpecsSet (specs: Spec[]) { + return new Set(specs.map((spec) => spec.absolute)) +} + +interface Spec{ + absolute: string + relative: string +} + export const makeCypressPlugin = ( projectRoot: string, supportFilePath: string, devServerEvents: EventEmitter, - specs: {absolute: string, relative: string}[], + specs: Spec[], ): Plugin => { let base = '/' - const specsPathsSet = new Set(specs.map((spec) => spec.absolute)) + let specsPathsSet = getSpecsSet(specs) + + devServerEvents.on('dev-server:specs:changed', (specs: Spec[]) => { + specsPathsSet = getSpecsSet(specs) + }) const posixSupportFilePath = supportFilePath ? convertPathToPosix(resolve(projectRoot, supportFilePath)) : undefined