From 9ac3e8b79ecc584805c27d3602612c30f2adee80 Mon Sep 17 00:00:00 2001 From: DevMassive <76215222+DevMassive@users.noreply.github.com> Date: Thu, 7 Aug 2025 08:41:04 +0900 Subject: feat: Improve @-command file path completion with fzf integration (#5650) Co-authored-by: Jacob Richman --- .../core/src/utils/filesearch/fileSearch.test.ts | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'packages/core/src/utils/filesearch/fileSearch.test.ts') diff --git a/packages/core/src/utils/filesearch/fileSearch.test.ts b/packages/core/src/utils/filesearch/fileSearch.test.ts index a7f59f91..38657492 100644 --- a/packages/core/src/utils/filesearch/fileSearch.test.ts +++ b/packages/core/src/utils/filesearch/fileSearch.test.ts @@ -290,6 +290,30 @@ describe('FileSearch', () => { expect(results).toEqual(['src/file1.js', 'src/file2.js']); // Assuming alphabetical sort }); + it('should use fzf for fuzzy matching when pattern does not contain wildcards', async () => { + tmpDir = await createTmpDir({ + src: { + 'main.js': '', + 'util.ts': '', + 'style.css': '', + }, + }); + + const fileSearch = new FileSearch({ + projectRoot: tmpDir, + useGitignore: false, + useGeminiignore: false, + ignoreDirs: [], + cache: false, + cacheTtl: 0, + }); + + await fileSearch.initialize(); + const results = await fileSearch.search('sst'); + + expect(results).toEqual(['src/style.css']); + }); + it('should return empty array when no matches are found', async () => { tmpDir = await createTmpDir({ src: ['file1.js'], -- cgit v1.2.3