( projectsToCompare: ExcludeNullableProps<CompareReportsArgs>[], runManyCommand: RunManyCommand, env: RunEnv, )
| 239 | } |
| 240 | |
| 241 | async function compareManyProjects( |
| 242 | projectsToCompare: ExcludeNullableProps<CompareReportsArgs>[], |
| 243 | runManyCommand: RunManyCommand, |
| 244 | env: RunEnv, |
| 245 | ): Promise<Record<string, ProjectRunResult>> { |
| 246 | await Promise.all(projectsToCompare.map(prepareReportFilesToCompare)); |
| 247 | |
| 248 | await compareMany(runManyCommand, env, { |
| 249 | hasFormats: allProjectsHaveDefaultPersistFormats(projectsToCompare), |
| 250 | }); |
| 251 | |
| 252 | const projectsNewIssues = env.settings.detectNewIssues |
| 253 | ? Object.fromEntries( |
| 254 | await asyncSequential(projectsToCompare, async args => [ |
| 255 | args.project.name, |
| 256 | await findNewIssues(args), |
| 257 | ]), |
| 258 | ) |
| 259 | : {}; |
| 260 | |
| 261 | return Object.fromEntries( |
| 262 | await Promise.all( |
| 263 | projectsToCompare.map(async args => [ |
| 264 | args.project.name, |
| 265 | await saveDiffFiles(args, projectsNewIssues[args.project.name]), |
| 266 | ]), |
| 267 | ), |
| 268 | ); |
| 269 | } |
| 270 | |
| 271 | function finalizeProjectReports( |
| 272 | projectReports: ProjectReport[], |
no test coverage detected