/
index.d.ts
86 lines (77 loc) · 1.82 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import {ChildProcess} from 'child_process';
export interface TestResult {
id: number,
script: string,
stdout: string,
stderr: string,
status: string,
extime: number,
stats: {
cpus: number[],
mems: number[],
maxCPU: number,
minCPU: number,
maxMem: number,
minMem: number,
}
}
export interface EngineInfo {
name: string,
memOverhead: number,
timeOverhead: number,
path: string,
testsQueue: ParsedBenchmark[],
testsPassed: TestResult[],
testsFailed: TestResult[],
becnhmarkTimeOverhead?: number,
becnhmarkMemOverhead?: number,
errors?: any[],
}
export interface EnginesSetup {
list: string[],
V8: EngineInfo,
JSC: EngineInfo,
SM: EngineInfo,
}
export interface Process {
id: number,
script: string,
engine: string,
childProcess: ChildProcess,
startTime: number,
cpuVals: number[],
memVals: number[],
isTimedOut? : boolean,
finishedAt: number,
isKilled: boolean,
isTestCompleted: boolean,
}
export interface ProcessStats {
cpu: number, // percentage (from 0 to 100*vcore)
memory: number, // bytes
ppid: number, // PPID
pid: number, // PID
ctime: number, // ms user + system time
elapsed: number, // ms since the start of the process
timestamp: number // ms since epoch
}
export interface ProcessEndResult {
code: number | null,
signal?: string,
error?: Error
}
export interface RunTestsOptions {
TIMEOUT: number,
RESULTS_FOLDER: string,
RESULTS_LATEST: string,
}
export interface ParsedBenchmark {
name: string,
plainTestPath: string,
benchmarkTestPath: string,
}
export interface ParsedTest {
name: string,
benchmarks: ParsedBenchmark[],
}
export as namespace EnTest;