From: "Daniel P. Berrangé" <berrange@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Thomas Huth" <thuth@redhat.com>,
"Juan Quintela" <quintela@redhat.com>,
"Peter Xu" <peterx@redhat.com>,
"Laurent Vivier" <lvivier@redhat.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Leonardo Bras" <leobras@redhat.com>,
"Daniel P. Berrangé" <berrange@redhat.com>
Subject: [PATCH v4 03/10] tests/qtest: get rid of 'qmp_command' helper in migration test
Date: Thu, 1 Jun 2023 17:13:40 +0100 [thread overview]
Message-ID: <20230601161347.1803440-4-berrange@redhat.com> (raw)
In-Reply-To: <20230601161347.1803440-1-berrange@redhat.com>
This function duplicates logic of qtest_qmp_assert_success_ref.
The qtest_qmp_assert_success_ref method has better diagnostics
on failure because it prints the entire QMP response, instead
of just asserting on existance of the 'error' key.
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
tests/qtest/migration-helpers.c | 22 ----------------------
tests/qtest/migration-helpers.h | 3 ---
tests/qtest/migration-test.c | 29 +++++++++++++++--------------
3 files changed, 15 insertions(+), 39 deletions(-)
diff --git a/tests/qtest/migration-helpers.c b/tests/qtest/migration-helpers.c
index f6f3c6680f..bddf3f8d4d 100644
--- a/tests/qtest/migration-helpers.c
+++ b/tests/qtest/migration-helpers.c
@@ -85,28 +85,6 @@ QDict *wait_command(QTestState *who, const char *command, ...)
return ret;
}
-/*
- * Execute the qmp command only
- */
-QDict *qmp_command(QTestState *who, const char *command, ...)
-{
- va_list ap;
- QDict *resp, *ret;
-
- va_start(ap, command);
- resp = qtest_vqmp(who, command, ap);
- va_end(ap);
-
- g_assert(!qdict_haskey(resp, "error"));
- g_assert(qdict_haskey(resp, "return"));
-
- ret = qdict_get_qdict(resp, "return");
- qobject_ref(ret);
- qobject_unref(resp);
-
- return ret;
-}
-
/*
* Send QMP command "migrate".
* Arguments are built from @fmt... (formatted like
diff --git a/tests/qtest/migration-helpers.h b/tests/qtest/migration-helpers.h
index a188b62787..2e51a6e195 100644
--- a/tests/qtest/migration-helpers.h
+++ b/tests/qtest/migration-helpers.h
@@ -25,9 +25,6 @@ QDict *wait_command_fd(QTestState *who, int fd, const char *command, ...);
G_GNUC_PRINTF(2, 3)
QDict *wait_command(QTestState *who, const char *command, ...);
-G_GNUC_PRINTF(2, 3)
-QDict *qmp_command(QTestState *who, const char *command, ...);
-
G_GNUC_PRINTF(3, 4)
void migrate_qmp(QTestState *who, const char *uri, const char *fmt, ...);
diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c
index b99b49a314..9ce27f89ec 100644
--- a/tests/qtest/migration-test.c
+++ b/tests/qtest/migration-test.c
@@ -2322,32 +2322,33 @@ static void test_multifd_tcp_cancel(void)
static void calc_dirty_rate(QTestState *who, uint64_t calc_time)
{
- qobject_unref(qmp_command(who,
- "{ 'execute': 'calc-dirty-rate',"
- "'arguments': { "
- "'calc-time': %" PRIu64 ","
- "'mode': 'dirty-ring' }}",
- calc_time));
+ qtest_qmp_assert_success(who,
+ "{ 'execute': 'calc-dirty-rate',"
+ "'arguments': { "
+ "'calc-time': %" PRIu64 ","
+ "'mode': 'dirty-ring' }}",
+ calc_time);
}
static QDict *query_dirty_rate(QTestState *who)
{
- return qmp_command(who, "{ 'execute': 'query-dirty-rate' }");
+ return qtest_qmp_assert_success_ref(who,
+ "{ 'execute': 'query-dirty-rate' }");
}
static void dirtylimit_set_all(QTestState *who, uint64_t dirtyrate)
{
- qobject_unref(qmp_command(who,
- "{ 'execute': 'set-vcpu-dirty-limit',"
- "'arguments': { "
- "'dirty-rate': %" PRIu64 " } }",
- dirtyrate));
+ qtest_qmp_assert_success(who,
+ "{ 'execute': 'set-vcpu-dirty-limit',"
+ "'arguments': { "
+ "'dirty-rate': %" PRIu64 " } }",
+ dirtyrate);
}
static void cancel_vcpu_dirty_limit(QTestState *who)
{
- qobject_unref(qmp_command(who,
- "{ 'execute': 'cancel-vcpu-dirty-limit' }"));
+ qtest_qmp_assert_success(who,
+ "{ 'execute': 'cancel-vcpu-dirty-limit' }");
}
static QDict *query_vcpu_dirty_limit(QTestState *who)
--
2.40.1
next prev parent reply other threads:[~2023-06-01 16:16 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-01 16:13 [PATCH v4 00/10] tests/qtest: make migration-test massively faster Daniel P. Berrangé
2023-06-01 16:13 ` [PATCH v4 01/10] tests/qtest: add various qtest_qmp_assert_success() variants Daniel P. Berrangé
2023-06-01 22:44 ` Juan Quintela
2023-06-01 16:13 ` [PATCH v4 02/10] tests/qtest: add support for callback to receive QMP events Daniel P. Berrangé
2023-06-01 22:45 ` Juan Quintela
2023-06-02 7:51 ` Thomas Huth
2023-06-01 16:13 ` Daniel P. Berrangé [this message]
2023-06-02 7:52 ` [PATCH v4 03/10] tests/qtest: get rid of 'qmp_command' helper in migration test Thomas Huth
2023-06-01 16:13 ` [PATCH v4 04/10] tests/qtest: get rid of some 'qtest_qmp' usage " Daniel P. Berrangé
2023-06-01 16:13 ` [PATCH v4 05/10] tests/qtest: switch to using event callbacks for STOP event Daniel P. Berrangé
2023-06-01 16:13 ` [PATCH v4 06/10] tests/qtest: replace wait_command() with qtest_qmp_assert_success Daniel P. Berrangé
2023-06-01 16:13 ` [PATCH v4 07/10] tests/qtest: capture RESUME events during migration Daniel P. Berrangé
2023-06-02 7:45 ` Juan Quintela
2023-06-01 16:13 ` [PATCH v4 08/10] tests/qtest: distinguish src/dst migration VM stop/resume events Daniel P. Berrangé
2023-06-01 22:47 ` Juan Quintela
2023-06-01 16:13 ` [PATCH v4 09/10] tests/qtest: make more migration pre-copy scenarios run non-live Daniel P. Berrangé
2023-06-01 22:50 ` Juan Quintela
2023-06-01 16:13 ` [PATCH v4 10/10] tests/qtest: massively speed up migration-test Daniel P. Berrangé
2023-06-01 17:29 ` [PATCH] qtest/migration: Document live=true cases Peter Xu
2023-06-01 18:22 ` Daniel P. Berrangé
2023-06-01 22:52 ` Juan Quintela
2023-07-03 16:37 ` [PATCH v4 00/10] tests/qtest: make migration-test massively faster Thomas Huth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230601161347.1803440-4-berrange@redhat.com \
--to=berrange@redhat.com \
--cc=leobras@redhat.com \
--cc=lvivier@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peterx@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
--cc=thuth@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).