Skip to content

Commit eab6f5c

Browse files
committed
Adding additional patterns for file filtering for test generation.
1 parent 5d9cbf3 commit eab6f5c

File tree

2 files changed

+27
-4
lines changed

2 files changed

+27
-4
lines changed

packages/core/src/codewhisperer/models/constants.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -896,3 +896,21 @@ export enum SecurityScanStep {
896896
}
897897

898898
export const amazonqCodeIssueDetailsTabTitle = 'Code Issue Details'
899+
900+
export const testGenExcludePatterns = [
901+
'**/annotation-generated-src/*',
902+
'**/annotation-generated-tst/*',
903+
'**/build/*',
904+
'**/env/*',
905+
'**/release-info/*',
906+
'**/*.jar',
907+
'**/*.exe',
908+
'**/*.a',
909+
'**/*.map',
910+
'**/*.graph',
911+
'**/*.so',
912+
'**/*.csv',
913+
'**/*.dylib',
914+
'**/*.parquet',
915+
'**/*.xlsx',
916+
]

packages/core/src/shared/utilities/workspaceUtils.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import fs from '../fs/fs'
2020
import { ChildProcess } from './processUtils'
2121
import { isWin } from '../vscode/env'
2222
import { maxRepoSizeBytes } from '../../amazonqFeatureDev/constants'
23-
import { FeatureUseCase } from '../../codewhisperer/models/constants'
23+
import { FeatureUseCase, testGenExcludePatterns } from '../../codewhisperer/models/constants'
2424

2525
type GitIgnoreRelativeAcceptor = {
2626
folderPath: string
@@ -299,14 +299,18 @@ export const defaultExcludePatterns = [
299299
'**/LICENSE.md',
300300
]
301301

302-
export function getExcludePattern(useDefaults: boolean = true) {
302+
export function getExcludePattern(useDefaults: boolean = true, useCase?: FeatureUseCase) {
303303
const globAlwaysExcludedDirs = getGlobalExcludePatterns()
304304
const allPatterns = [...globAlwaysExcludedDirs]
305305

306306
if (useDefaults) {
307307
allPatterns.push(...defaultExcludePatterns)
308308
}
309309

310+
if (useCase == FeatureUseCase.TEST_GENERATION) {
311+
allPatterns.push(...testGenExcludePatterns)
312+
}
313+
310314
return excludePatternsAsString(allPatterns)
311315
}
312316

@@ -327,11 +331,12 @@ function excludePatternsAsString(patterns: string[]): string {
327331
async function filterOutGitignoredFiles(
328332
rootPath: string,
329333
files: vscode.Uri[],
330-
useDefaultExcludePatterns: boolean = true
334+
useDefaultExcludePatterns: boolean = true,
335+
useCase?: FeatureUseCase
331336
): Promise<vscode.Uri[]> {
332337
const gitIgnoreFiles = await vscode.workspace.findFiles(
333338
new vscode.RelativePattern(rootPath, '**/.gitignore'),
334-
getExcludePattern(useDefaultExcludePatterns)
339+
getExcludePattern(useCase === FeatureUseCase.TEST_GENERATION ? true : useDefaultExcludePatterns, useCase)
335340
)
336341
const gitIgnoreFilter = await GitIgnoreFilter.build(gitIgnoreFiles)
337342
return gitIgnoreFilter.filterFiles(files)

0 commit comments

Comments
 (0)