From 8c3b5bf48123783b812b97360db7ac51f1889e17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Ry=C5=A1av=C3=BD?= Date: Thu, 15 Sep 2016 10:27:06 +0200 Subject: [PATCH] test driver: Implement testNodeGetCPUStats MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tomáš Ryšavý Signed-off-by: Michal Privoznik --- src/test/test_driver.c | 48 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 1d5576b3c1..7ff8e28cdb 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -63,6 +63,7 @@ #include "virauth.h" #include "viratomic.h" #include "virdomainobjlist.h" +#include "virhostcpu.h" #define VIR_FROM_THIS VIR_FROM_TEST @@ -2708,6 +2709,52 @@ static int testNodeGetCellsFreeMemory(virConnectPtr conn, return ret; } +#define TEST_NB_CPU_STATS 4 + +static int +testNodeGetCPUStats(virConnectPtr conn ATTRIBUTE_UNUSED, + int cpuNum ATTRIBUTE_UNUSED, + virNodeCPUStatsPtr params, + int *nparams, + unsigned int flags) +{ + size_t i = 0; + + virCheckFlags(0, -1); + + if (params == NULL) { + *nparams = TEST_NB_CPU_STATS; + return 0; + } + + for (i = 0; i < *nparams && i < 4; i++) { + switch (i) { + case 0: + if (virHostCPUStatsAssign(¶ms[i], + VIR_NODE_CPU_STATS_USER, 9797400000) < 0) + return -1; + break; + case 1: + if (virHostCPUStatsAssign(¶ms[i], + VIR_NODE_CPU_STATS_KERNEL, 34678723400000) < 0) + return -1; + break; + case 2: + if (virHostCPUStatsAssign(¶ms[i], + VIR_NODE_CPU_STATS_IDLE, 87264900000) < 0) + return -1; + break; + case 3: + if (virHostCPUStatsAssign(¶ms[i], + VIR_NODE_CPU_STATS_IOWAIT, 763600000) < 0) + return -1; + break; + } + } + + *nparams = i; + return 0; +} static int testDomainCreateWithFlags(virDomainPtr domain, unsigned int flags) { @@ -6700,6 +6747,7 @@ static virHypervisorDriver testHypervisorDriver = { .connectGetHostname = testConnectGetHostname, /* 0.6.3 */ .connectGetMaxVcpus = testConnectGetMaxVcpus, /* 0.3.2 */ .nodeGetInfo = testNodeGetInfo, /* 0.1.1 */ + .nodeGetCPUStats = testNodeGetCPUStats, /* 2.3.0 */ .connectGetCapabilities = testConnectGetCapabilities, /* 0.2.1 */ .connectGetSysinfo = testConnectGetSysinfo, /* 2.3.0 */ .connectGetType = testConnectGetType, /* 2.3.0 */