Skip to content

⬅️ Back to Table of Contents

📄 useProgramFromProjectService.test.ts

📊 Analysis Summary

Metric Count
🔧 Functions 38
📦 Imports 5
📊 Variables & Constants 13

📚 Table of Contents

🛠️ File Location:

📂 packages/typescript-estree/tests/lib/useProgramFromProjectService.test.ts

📦 Imports

Name Source
ProjectServiceAndMetadata @typescript-eslint/project-service
TypeScriptProjectService @typescript-eslint/project-service
path node:path
ParseSettings ../../src/parseSettings
useProgramFromProjectService ../../src/useProgramFromProjectService

Variables & Constants

Name Type Kind Value Exported
currentDirectory "/repos/repo" const '/repos/repo'
service { getDefaultProjectForFile: () => { getLanguageService: () => { getProgram: any; }; }; getScriptInfo: () => {}; host: { getCurrentDirectory: () => string; }; openClientFile: any; reloadProjects: any; setHostConfiguration: any; } const `{
getDefaultProjectForFile: () => ({
getLanguageService: () => ({
getProgram: mockGetProgram,
}),
}),
getScriptInfo: () => ({}),
host: {
getCurrentDirectory: () => currentDirectory,
},
openClientFile,
reloadProjects,
setHostConfiguration,
}`
mockFileName "camelCaseFile.ts" const 'camelCaseFile.ts'
mockParseSettings Readonly<MutableParseSettings> const `{
extraFileExtensions: [] as readonly string[],
filePath: path/PascalCaseDirectory/${mockFileName},
singleRun: false,
tsconfigRootDir: currentDirectory,
} as ParseSettings`
stubASTAndNoProgram { ast: any; program: any; } const `{
ast: ts.createSourceFile(mockFileName, '', ts.ScriptTarget.Latest),
program: null,
}`
program { getSourceFile: any; } const { getSourceFile: vi.fn() }
program { getSourceFile: any; } const { getSourceFile: vi.fn() }
program { getSourceFile: any; } const { getSourceFile: vi.fn() }
program { getSourceFile: any; } const { getSourceFile: vi.fn() }
program { getSourceFile: any; } const { getSourceFile: vi.fn() }
program { getSourceFile: any; } const { getSourceFile: vi.fn() }
filePath "path/PascalCaseDirectory/vue-component.vue" const path/PascalCaseDirectory/vue-component.vue
filePath "path/PascalCaseDirectory/vue-component.vue" const path/PascalCaseDirectory/vue-component.vue

Functions

createMockProjectService(): { openClientFile: any; reloadProjects: any; service: any; }

Code
function createMockProjectService() {
  const openClientFile = vi.fn();
  const setHostConfiguration = vi.fn();
  const reloadProjects = vi.fn();
  const service = {
    getDefaultProjectForFile: () => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    }),
    getScriptInfo: () => ({}),
    host: {
      getCurrentDirectory: () => currentDirectory,
    },
    openClientFile,
    reloadProjects,
    setHostConfiguration,
  };

  return {
    openClientFile,
    reloadProjects,
    service: service as typeof service & TypeScriptProjectService,
  };
}
  • Return Type: { openClientFile: any; reloadProjects: any; service: any; }
  • Calls:
  • vi.fn

getDefaultProjectForFile(): { getLanguageService: () => { getProgram: any; }; }

Code
() => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    })
  • Return Type: { getLanguageService: () => { getProgram: any; }; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getScriptInfo(): {}

Code
() => ({})
  • Return Type: {}

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getDefaultProjectForFile(): { getLanguageService: () => { getProgram: any; }; }

Code
() => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    })
  • Return Type: { getLanguageService: () => { getProgram: any; }; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getScriptInfo(): {}

Code
() => ({})
  • Return Type: {}

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getDefaultProjectForFile(): { getLanguageService: () => { getProgram: any; }; }

Code
() => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    })
  • Return Type: { getLanguageService: () => { getProgram: any; }; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getScriptInfo(): {}

Code
() => ({})
  • Return Type: {}

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getDefaultProjectForFile(): { getLanguageService: () => { getProgram: any; }; }

Code
() => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    })
  • Return Type: { getLanguageService: () => { getProgram: any; }; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getScriptInfo(): {}

Code
() => ({})
  • Return Type: {}

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getDefaultProjectForFile(): { getLanguageService: () => { getProgram: any; }; }

Code
() => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    })
  • Return Type: { getLanguageService: () => { getProgram: any; }; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getScriptInfo(): {}

Code
() => ({})
  • Return Type: {}

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getDefaultProjectForFile(): { getLanguageService: () => { getProgram: any; }; }

Code
() => ({
      getLanguageService: () => ({
        getProgram: mockGetProgram,
      }),
    })
  • Return Type: { getLanguageService: () => { getProgram: any; }; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getLanguageService(): { getProgram: any; }

Code
() => ({
        getProgram: mockGetProgram,
      })
  • Return Type: { getProgram: any; }

getScriptInfo(): {}

Code
() => ({})
  • Return Type: {}

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

getCurrentDirectory(): string

Code
() => currentDirectory
  • Return Type: string

createProjectServiceSettings(settings: T): { lastReloadTimestamp: number; maximumDefaultProjectFileMatchCount: number; } & T

Code
<
  T extends Partial<ProjectServiceAndMetadata>,
>(
  settings: T,
) => ({
  lastReloadTimestamp: 0,
  maximumDefaultProjectFileMatchCount: 8,
  ...settings,
})
  • Parameters:
  • settings: T
  • Return Type: { lastReloadTimestamp: number; maximumDefaultProjectFileMatchCount: number; } & T