mirror of
https://github.com/stablyai/orca.git
synced 2026-10-31 00:57:45 +00:00
fix(ci): retain TypeScript project input consumers (#32522)
This commit is contained in:
@@ -2,7 +2,7 @@ import ts from 'typescript-api'
|
||||
import { literalString, propertyName, unwrap } from './static-module-specifiers.mjs'
|
||||
|
||||
const INDIRECT_NAME =
|
||||
/^(?:readFile\w*|readdir\w*|glob(?:Sync|Stream|Iterate|SyncIterate|StreamSync)?|spawn(?:Sync)?|execFile(?:Sync)?|execSync|runProcess\w*|fork|Worker|createRequire|getBuiltinModule|eval|Function)$/
|
||||
/^(?:readFile\w*|readdir\w*|glob(?:Sync|Stream|Iterate|SyncIterate|StreamSync)?|spawn(?:Sync)?|execFile(?:Sync)?|execSync|runProcess\w*|fork|Worker|createRequire|getBuiltinModule|create(?:Incremental|Watch|EmitAndSemanticDiagnosticsBuilder|SemanticDiagnosticsBuilder)?Program|createSolutionBuilder(?:WithWatch)?|createLanguageService|getParsedCommandLineOfConfigFile|parseJson(?:SourceFile)?ConfigFileContent|readConfigFile|resolveModuleName|resolveTypeReferenceDirective|readDirectory|eval|Function)$/
|
||||
const INDIRECT_CANDIDATE = new RegExp(
|
||||
`\\b${INDIRECT_NAME.source.slice(1, -1)}\\b|\\b(?:import|require)\\s*\\(|\\bURL\\b`
|
||||
)
|
||||
|
||||
@@ -23,7 +23,8 @@ it.each([
|
||||
'export interface Config { spawnToken: string; Worker: string }',
|
||||
'export type Config = { readFile: string; global: boolean }',
|
||||
"export const url = new URL('https://example.test/data')",
|
||||
'export const spawnToken = "opaque-token"'
|
||||
'export const spawnToken = "opaque-token"',
|
||||
"const ast = ts.createSourceFile('source.ts', source, target)"
|
||||
])('does not retain unrelated tests for syntax that loads no repository inputs: %s', (source) => {
|
||||
expect(selected(source)).toEqual(['src/changed.test.ts'])
|
||||
})
|
||||
@@ -42,6 +43,21 @@ it.each([
|
||||
"const read = fs['readFileSync']; read(path)",
|
||||
'const execute = runProcess; execute(command)',
|
||||
'const load = process.getBuiltinModule; load(moduleName)',
|
||||
'const program = ts.createProgram(options)',
|
||||
'const program = ts.createIncrementalProgram(options)',
|
||||
'const program = ts.createWatchProgram(options)',
|
||||
'const config = ts.getParsedCommandLineOfConfigFile(path, {}, ts.sys)',
|
||||
'const config = ts.parseJsonConfigFileContent(config, ts.sys, root)',
|
||||
'const config = ts.parseJsonSourceFileConfigFileContent(config, ts.sys, root)',
|
||||
'const config = ts.readConfigFile(path, ts.sys.readFile)',
|
||||
'const program = ts.createEmitAndSemanticDiagnosticsBuilderProgram(options)',
|
||||
'const program = ts.createSemanticDiagnosticsBuilderProgram(options)',
|
||||
'const builder = ts.createSolutionBuilder(host, roots, options)',
|
||||
'const builder = ts.createSolutionBuilderWithWatch(host, roots, options)',
|
||||
'const service = ts.createLanguageService(host)',
|
||||
'const resolved = ts.resolveModuleName(name, file, options, host)',
|
||||
'const resolved = ts.resolveTypeReferenceDirective(name, file, options, host)',
|
||||
'const files = ts.sys.readDirectory(directory)',
|
||||
'eval(source)',
|
||||
'const execute = new Function(source); execute()',
|
||||
'spawn( @@@'
|
||||
|
||||
Reference in New Issue
Block a user