mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 13:45:38 +00:00
test: qemu: json: Avoid using the now obsolete functions
Use the new single function instead of calling qemuMonitorJSONGetBlockStatsInfo and qemuMonitorJSONGetBlockStatsParamsNumber. This will allow to delete the functions later while still maintaining coverage.
This commit is contained in:
parent
e045587dda
commit
3a83dcf43e
@ -1435,11 +1435,9 @@ testQemuMonitorJSONqemuMonitorJSONGetBlockStatsInfo(const void *data)
|
|||||||
{
|
{
|
||||||
virDomainXMLOptionPtr xmlopt = (virDomainXMLOptionPtr)data;
|
virDomainXMLOptionPtr xmlopt = (virDomainXMLOptionPtr)data;
|
||||||
qemuMonitorTestPtr test = qemuMonitorTestNewSimple(true, xmlopt);
|
qemuMonitorTestPtr test = qemuMonitorTestNewSimple(true, xmlopt);
|
||||||
|
virHashTablePtr blockstats = NULL;
|
||||||
|
qemuBlockStatsPtr stats;
|
||||||
int ret = -1;
|
int ret = -1;
|
||||||
long long rd_req, rd_bytes, rd_total_times;
|
|
||||||
long long wr_req, wr_bytes, wr_total_times;
|
|
||||||
long long flush_req, flush_total_times;
|
|
||||||
int nparams;
|
|
||||||
unsigned long long extent;
|
unsigned long long extent;
|
||||||
|
|
||||||
const char *reply =
|
const char *reply =
|
||||||
@ -1535,24 +1533,26 @@ testQemuMonitorJSONqemuMonitorJSONGetBlockStatsInfo(const void *data)
|
|||||||
|
|
||||||
/* fill in seven times - we are gonna ask seven times later on */
|
/* fill in seven times - we are gonna ask seven times later on */
|
||||||
if (qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
if (qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
||||||
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
|
||||||
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
|
||||||
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
|
||||||
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
||||||
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0 ||
|
||||||
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0)
|
qemuMonitorTestAddItem(test, "query-blockstats", reply) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
#define CHECK0(var, value) \
|
#define CHECK0(var, value) \
|
||||||
if (var != value) { \
|
if (stats->var != value) { \
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR, \
|
virReportError(VIR_ERR_INTERNAL_ERROR, \
|
||||||
"Invalid " #var " value: %lld, expected %d", \
|
"Invalid " #var " value: %lld, expected %d", \
|
||||||
var, value); \
|
stats->var, value); \
|
||||||
goto cleanup; \
|
goto cleanup; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#define CHECK(RD_REQ, RD_BYTES, RD_TOTAL_TIMES, WR_REQ, WR_BYTES, WR_TOTAL_TIMES, \
|
#define CHECK(NAME, RD_REQ, RD_BYTES, RD_TOTAL_TIMES, WR_REQ, WR_BYTES, \
|
||||||
FLUSH_REQ, FLUSH_TOTAL_TIMES) \
|
WR_TOTAL_TIMES, FLUSH_REQ, FLUSH_TOTAL_TIMES) \
|
||||||
|
if (!(stats = virHashLookup(blockstats, NAME))) { \
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR, \
|
||||||
|
"block stats for device '%s' is missing", NAME); \
|
||||||
|
goto cleanup; \
|
||||||
|
} \
|
||||||
CHECK0(rd_req, RD_REQ) \
|
CHECK0(rd_req, RD_REQ) \
|
||||||
CHECK0(rd_bytes, RD_BYTES) \
|
CHECK0(rd_bytes, RD_BYTES) \
|
||||||
CHECK0(rd_total_times, RD_TOTAL_TIMES) \
|
CHECK0(rd_total_times, RD_TOTAL_TIMES) \
|
||||||
@ -1562,41 +1562,20 @@ testQemuMonitorJSONqemuMonitorJSONGetBlockStatsInfo(const void *data)
|
|||||||
CHECK0(flush_req, FLUSH_REQ) \
|
CHECK0(flush_req, FLUSH_REQ) \
|
||||||
CHECK0(flush_total_times, FLUSH_TOTAL_TIMES)
|
CHECK0(flush_total_times, FLUSH_TOTAL_TIMES)
|
||||||
|
|
||||||
if (qemuMonitorJSONGetBlockStatsInfo(qemuMonitorTestGetMonitor(test), "virtio-disk0",
|
if (qemuMonitorGetAllBlockStatsInfo(qemuMonitorTestGetMonitor(test),
|
||||||
&rd_req, &rd_bytes, &rd_total_times,
|
&blockstats, false) < 0)
|
||||||
&wr_req, &wr_bytes, &wr_total_times,
|
|
||||||
&flush_req, &flush_total_times) < 0)
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
CHECK(1279, 28505088, 640616474, 174, 2845696, 530699221, 0, 0)
|
if (!blockstats) {
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||||
if (qemuMonitorJSONGetBlockStatsInfo(qemuMonitorTestGetMonitor(test), "virtio-disk1",
|
"qemuMonitorJSONGetBlockStatsInfo didn't return stats");
|
||||||
&rd_req, &rd_bytes, &rd_total_times,
|
|
||||||
&wr_req, &wr_bytes, &wr_total_times,
|
|
||||||
&flush_req, &flush_total_times) < 0)
|
|
||||||
goto cleanup;
|
|
||||||
|
|
||||||
CHECK(85, 348160, 8232156, 0, 0, 0, 0, 0)
|
|
||||||
|
|
||||||
if (qemuMonitorJSONGetBlockStatsInfo(qemuMonitorTestGetMonitor(test), "ide0-1-0",
|
|
||||||
&rd_req, &rd_bytes, &rd_total_times,
|
|
||||||
&wr_req, &wr_bytes, &wr_total_times,
|
|
||||||
&flush_req, &flush_total_times) < 0)
|
|
||||||
goto cleanup;
|
|
||||||
|
|
||||||
CHECK(16, 49250, 1004952, 0, 0, 0, 0, 0)
|
|
||||||
|
|
||||||
if (qemuMonitorJSONGetBlockStatsParamsNumber(qemuMonitorTestGetMonitor(test),
|
|
||||||
&nparams) < 0)
|
|
||||||
goto cleanup;
|
|
||||||
|
|
||||||
if (nparams != 8) {
|
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
|
||||||
"Invalid number of stats: %d, expected 8",
|
|
||||||
nparams);
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CHECK("virtio-disk0", 1279, 28505088, 640616474, 174, 2845696, 530699221, 0, 0)
|
||||||
|
CHECK("virtio-disk1", 85, 348160, 8232156, 0, 0, 0, 0, 0)
|
||||||
|
CHECK("ide0-1-0", 16, 49250, 1004952, 0, 0, 0, 0, 0)
|
||||||
|
|
||||||
if (qemuMonitorJSONGetBlockExtent(qemuMonitorTestGetMonitor(test), "virtio-disk0",
|
if (qemuMonitorJSONGetBlockExtent(qemuMonitorTestGetMonitor(test), "virtio-disk0",
|
||||||
&extent) < 0)
|
&extent) < 0)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
@ -1637,6 +1616,7 @@ testQemuMonitorJSONqemuMonitorJSONGetBlockStatsInfo(const void *data)
|
|||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
qemuMonitorTestFree(test);
|
qemuMonitorTestFree(test);
|
||||||
|
virHashFree(blockstats);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user