report: loop over uv_cpu_info() results
The code currently loops over the results, but only the first result is accessed. PR-URL: https://github.com/nodejs/node/pull/28829 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>
This commit is contained in:
parent
306d240b01
commit
48e13d2adf
@ -334,13 +334,13 @@ static void PrintCpuInfo(JSONWriter* writer) {
|
|||||||
writer->json_arraystart("cpus");
|
writer->json_arraystart("cpus");
|
||||||
for (int i = 0; i < count; i++) {
|
for (int i = 0; i < count; i++) {
|
||||||
writer->json_start();
|
writer->json_start();
|
||||||
writer->json_keyvalue("model", cpu_info->model);
|
writer->json_keyvalue("model", cpu_info[i].model);
|
||||||
writer->json_keyvalue("speed", cpu_info->speed);
|
writer->json_keyvalue("speed", cpu_info[i].speed);
|
||||||
writer->json_keyvalue("user", cpu_info->cpu_times.user);
|
writer->json_keyvalue("user", cpu_info[i].cpu_times.user);
|
||||||
writer->json_keyvalue("nice", cpu_info->cpu_times.nice);
|
writer->json_keyvalue("nice", cpu_info[i].cpu_times.nice);
|
||||||
writer->json_keyvalue("sys", cpu_info->cpu_times.sys);
|
writer->json_keyvalue("sys", cpu_info[i].cpu_times.sys);
|
||||||
writer->json_keyvalue("idle", cpu_info->cpu_times.idle);
|
writer->json_keyvalue("idle", cpu_info[i].cpu_times.idle);
|
||||||
writer->json_keyvalue("irq", cpu_info->cpu_times.irq);
|
writer->json_keyvalue("irq", cpu_info[i].cpu_times.irq);
|
||||||
writer->json_end();
|
writer->json_end();
|
||||||
}
|
}
|
||||||
writer->json_arrayend();
|
writer->json_arrayend();
|
||||||
|
@ -5,6 +5,7 @@ const fs = require('fs');
|
|||||||
const os = require('os');
|
const os = require('os');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const util = require('util');
|
const util = require('util');
|
||||||
|
const cpus = os.cpus();
|
||||||
|
|
||||||
function findReports(pid, dir) {
|
function findReports(pid, dir) {
|
||||||
// Default filenames are of the form
|
// Default filenames are of the form
|
||||||
@ -98,6 +99,7 @@ function _validateContent(report) {
|
|||||||
assert.strictEqual(typeof header.osVersion, 'string');
|
assert.strictEqual(typeof header.osVersion, 'string');
|
||||||
assert.strictEqual(typeof header.osMachine, 'string');
|
assert.strictEqual(typeof header.osMachine, 'string');
|
||||||
assert(Array.isArray(header.cpus));
|
assert(Array.isArray(header.cpus));
|
||||||
|
assert.strictEqual(header.cpus.length, cpus.length);
|
||||||
header.cpus.forEach((cpu) => {
|
header.cpus.forEach((cpu) => {
|
||||||
assert.strictEqual(typeof cpu.model, 'string');
|
assert.strictEqual(typeof cpu.model, 'string');
|
||||||
assert.strictEqual(typeof cpu.speed, 'number');
|
assert.strictEqual(typeof cpu.speed, 'number');
|
||||||
@ -106,6 +108,9 @@ function _validateContent(report) {
|
|||||||
assert.strictEqual(typeof cpu.sys, 'number');
|
assert.strictEqual(typeof cpu.sys, 'number');
|
||||||
assert.strictEqual(typeof cpu.idle, 'number');
|
assert.strictEqual(typeof cpu.idle, 'number');
|
||||||
assert.strictEqual(typeof cpu.irq, 'number');
|
assert.strictEqual(typeof cpu.irq, 'number');
|
||||||
|
assert(cpus.some((c) => {
|
||||||
|
return c.model === cpu.model && c.speed === cpu.speed;
|
||||||
|
}));
|
||||||
});
|
});
|
||||||
assert.strictEqual(header.host, os.hostname());
|
assert.strictEqual(header.host, os.hostname());
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user