From 7b8b8549cc113186216bf76bd96b8ee099a2d732 Mon Sep 17 00:00:00 2001 From: Gustavo Dantas Date: Tue, 3 Jun 2025 23:35:32 -0300 Subject: [PATCH 1/3] fix(testPathPatterns): allow absPath --- packages/jest-pattern/src/TestPathPatterns.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/jest-pattern/src/TestPathPatterns.ts b/packages/jest-pattern/src/TestPathPatterns.ts index 4ed7e3875252..9482e917d349 100644 --- a/packages/jest-pattern/src/TestPathPatterns.ts +++ b/packages/jest-pattern/src/TestPathPatterns.ts @@ -115,6 +115,10 @@ export class TestPathPatternsExecutor { if (this.toRegex(regexStr).test(pathToTest)) { return true; } + + if (this.toRegex(regexStr).test(absPath)) { + return true; + } } return false; } From eaedf3be0b2a3bd953e749acf4265087734ef5ba Mon Sep 17 00:00:00 2001 From: Gustavo Dantas Date: Tue, 3 Jun 2025 23:36:06 -0300 Subject: [PATCH 2/3] test(testPathPatterns): matches absolute path with absPath --- .../src/__tests__/TestPathPatterns.test.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts b/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts index 4d01f4eac57c..78f01752fc5d 100644 --- a/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts +++ b/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts @@ -230,5 +230,20 @@ describe('TestPathPatternsExecutor', () => { const testPathPatterns = makeExecutor(['a/b'], config); expect(testPathPatterns.isMatch('C:\\foo\\a\\b')).toBe(true); }); + + it('matches absolute path with absPath', () => { + const pattern = '^/home/app/'; + const rootDir = '/home/app'; + const absolutePath = '/home/app/packages/'; + + const testPathPatterns = makeExecutor([pattern], { + rootDir, + }); + + const relativePath = path.relative(rootDir, absolutePath); + + expect(testPathPatterns.isMatch(relativePath)).toBe(false); + expect(testPathPatterns.isMatch(absolutePath)).toBe(true); + }); }); }); From e2e6c9e9d6cb3a99584a43c78a2489f1c922ddc4 Mon Sep 17 00:00:00 2001 From: Gustavo Dantas Date: Tue, 3 Jun 2025 23:37:16 -0300 Subject: [PATCH 3/3] test(testPathPatterns): add path.relative to 'matches relative path' test --- .../src/__tests__/TestPathPatterns.test.ts | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts b/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts index 78f01752fc5d..abba2d24028c 100644 --- a/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts +++ b/packages/jest-pattern/src/__tests__/TestPathPatterns.test.ts @@ -186,11 +186,21 @@ describe('TestPathPatternsExecutor', () => { }); it('returns true only if matches relative path', () => { + const rootDir = '/home/myuser/'; + const testPathPatterns = makeExecutor(['home'], { - rootDir: '/home/myuser/', + rootDir, }); - expect(testPathPatterns.isMatch('/home/myuser/LoginPage.js')).toBe(false); - expect(testPathPatterns.isMatch('/home/myuser/HomePage.js')).toBe(true); + expect( + testPathPatterns.isMatch( + path.relative(rootDir, '/home/myuser/LoginPage.js'), + ), + ).toBe(false); + expect( + testPathPatterns.isMatch( + path.relative(rootDir, '/home/myuser/HomePage.js'), + ), + ).toBe(true); }); it('matches absolute paths regardless of rootDir', () => {