grading
Version:
Grading of student submissions, in particular programming tests.
56 lines (49 loc) • 1 kB
text/typescript
/**
* Interfaces representing Jest's coverage report in clover format.
*/
export interface Coverage {
generated: number;
clover: string;
project: Project;
}
export interface Project {
timestamp: number;
name: string;
metrics: ProjectMetrics;
file: File[];
}
export interface File {
name: string;
path: string;
metrics: Metrics;
line: Line[];
}
export interface Line {
num: number;
count: number;
type: Type;
truecount?: number;
falsecount?: number;
}
export enum Type {
Cond = "cond",
Stmt = "stmt",
}
export interface Metrics {
statements: number;
coveredstatements: number;
conditionals: number;
coveredconditionals: number;
methods: number;
coveredmethods: number;
}
export interface ProjectMetrics extends Metrics {
elements: number;
coveredelements: number;
complexity: number;
loc: number;
ncloc: number;
packages: number;
files: number;
classes: number;
};