08ea5fbe98
添加用户管理视图、API和状态管理文件
35 lines
815 B
TypeScript
35 lines
815 B
TypeScript
import {
|
|
BaseReportGenerator,
|
|
TestReport,
|
|
ReportGeneratorOptions,
|
|
} from './base-report-generator';
|
|
|
|
export class JSONReportGenerator extends BaseReportGenerator {
|
|
constructor(options: ReportGeneratorOptions) {
|
|
super(options);
|
|
}
|
|
|
|
getExtension(): string {
|
|
return 'json';
|
|
}
|
|
|
|
generate(report: TestReport): string {
|
|
const json = JSON.stringify(report, null, 2);
|
|
return this.writeToFile(json);
|
|
}
|
|
|
|
generateCompact(report: TestReport): string {
|
|
const json = JSON.stringify(report);
|
|
return this.writeToFile(json);
|
|
}
|
|
|
|
generateWithMetadata(report: TestReport, metadata: Record<string, any>): string {
|
|
const reportWithMetadata = {
|
|
...report,
|
|
metadata,
|
|
};
|
|
const json = JSON.stringify(reportWithMetadata, null, 2);
|
|
return this.writeToFile(json);
|
|
}
|
|
}
|