(testFiles, requiredModules = [])
| 141 | * @returns {{hasError: boolean, message: string|null}} |
| 142 | */ |
| 143 | export function validateTypeScriptSetup(testFiles, requiredModules = []) { |
| 144 | const tsFiles = testFiles.filter(f => f.endsWith('.ts')) |
| 145 | |
| 146 | if (tsFiles.length === 0) { |
| 147 | // No TypeScript test files, all good |
| 148 | return { hasError: false, message: null } |
| 149 | } |
| 150 | |
| 151 | // Check if a loader is configured in the require array |
| 152 | const hasLoader = checkTypeScriptLoader(requiredModules) |
| 153 | |
| 154 | if (hasLoader) { |
| 155 | // Loader configured, all good (package will be checked when requireModules runs) |
| 156 | return { hasError: false, message: null } |
| 157 | } |
| 158 | |
| 159 | // No loader configured and TypeScript tests exist |
| 160 | const message = getTypeScriptLoaderError(testFiles) |
| 161 | return { hasError: true, message } |
| 162 | } |
no test coverage detected