From e54a662078597680ef17ffd82a141d9eb22ab098 Mon Sep 17 00:00:00 2001 From: Lasse Kuechler Date: Fri, 6 Aug 2021 10:46:52 +0200 Subject: [PATCH] fix issue where direct paths in the stories array would not resolve correctly fixes: #15746 --- .../utils/__tests__/to-require-context.test.ts | 17 +++++++++++++++++ lib/core-common/src/utils/to-require-context.ts | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/lib/core-common/src/utils/__tests__/to-require-context.test.ts b/lib/core-common/src/utils/__tests__/to-require-context.test.ts index 490e46735915..3ea69f4578b6 100644 --- a/lib/core-common/src/utils/__tests__/to-require-context.test.ts +++ b/lib/core-common/src/utils/__tests__/to-require-context.test.ts @@ -142,6 +142,23 @@ const testCases = [ '../src/stories/components/Icon/Icon.mdx', ], }, + { + glob: '../src/stories/components/Icon.stories.js', + recursive: false, + validPaths: ['../src/stories/components/Icon.stories.js'], + invalidPaths: [ + '../src/Icon.stories.mdx', + '../src/stories/components/Icon.stories/Icon.stories.mdx', + '../src/stories/components/Icon/Icon.mdx', + '../src/stories/components/Icon/Icon.stories.js', + '../src/stories/components/Icon/Icon.stories.ts', + '../src/stories/Icon.stories.js', + '../src/stories/Icon.stories.mdx', + './Icon.stories.js', + './src/stories/Icon.stories.js', + './stories.js', + ], + }, // DUMB GLOB { glob: '../src/stories/**/*.stories.[tj]sx', diff --git a/lib/core-common/src/utils/to-require-context.ts b/lib/core-common/src/utils/to-require-context.ts index 521ce5ca49c7..69fd7a57cb63 100644 --- a/lib/core-common/src/utils/to-require-context.ts +++ b/lib/core-common/src/utils/to-require-context.ts @@ -33,7 +33,7 @@ export const toRequireContext = (input: any) => { const base = globResult.isGlob ? globResult.prefix + globResult.base : path.dirname(fixedInput); - const globFallback = base !== '.' ? fixedInput.substr(base.length) : fixedInput; + const globFallback = base !== '.' ? fixedInput.substr(base.length + 1) : fixedInput; const glob = globResult.isGlob ? globResult.glob : globFallback; const regex = makeRe(glob, {