提交 3a83dcf4 编写于 作者: P Peter Krempa

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.
上级 e045587d
...@@ -1435,11 +1435,9 @@ testQemuMonitorJSONqemuMonitorJSONGetBlockStatsInfo(const void *data) ...@@ -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) ...@@ -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) ...@@ -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;
CHECK(1279, 28505088, 640616474, 174, 2845696, 530699221, 0, 0)
if (qemuMonitorJSONGetBlockStatsInfo(qemuMonitorTestGetMonitor(test), "virtio-disk1",
&rd_req, &rd_bytes, &rd_total_times,
&wr_req, &wr_bytes, &wr_total_times,
&flush_req, &flush_total_times) < 0)
goto cleanup; goto cleanup;
CHECK(85, 348160, 8232156, 0, 0, 0, 0, 0) if (!blockstats) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
if (qemuMonitorJSONGetBlockStatsInfo(qemuMonitorTestGetMonitor(test), "ide0-1-0", "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(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) ...@@ -1637,6 +1616,7 @@ testQemuMonitorJSONqemuMonitorJSONGetBlockStatsInfo(const void *data)
cleanup: cleanup:
qemuMonitorTestFree(test); qemuMonitorTestFree(test);
virHashFree(blockstats);
return ret; return ret;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册