[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 04/11] iotests: QemuStorageDaemon: add cmd() method like i
From: |
John Snow |
Subject: |
Re: [PATCH v4 04/11] iotests: QemuStorageDaemon: add cmd() method like in QEMUMachine. |
Date: |
Tue, 10 Jan 2023 14:13:51 -0500 |
On Tue, Jan 10, 2023 at 3:38 AM Vladimir Sementsov-Ogievskiy
<vsementsov@yandex-team.ru> wrote:
>
> Add similar method for consistency.
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
> ---
> tests/qemu-iotests/iotests.py | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
> index c69b10ac82..dd08cd8a2b 100644
> --- a/tests/qemu-iotests/iotests.py
> +++ b/tests/qemu-iotests/iotests.py
> @@ -462,6 +462,10 @@ def qmp(self, cmd: str, args: Optional[Dict[str,
> object]] = None) \
> assert self._qmp is not None
> return self._qmp.cmd_raw(cmd, args)
>
> + def cmd(self, cmd: str, args: Optional[Dict[str, object]] = None) \
> + -> QMPMessage:
> + return self._qmp.cmd(cmd, **args)
> +
The typing of this is off -- try "make check-dev" in qemu.git/python to see:
iotests.py:467: error: Item "None" of "Optional[QEMUMonitorProtocol]"
has no attribute "cmd" [union-attr]
iotests.py:467: error: Argument after ** must be a mapping, not
"Optional[Dict[str, object]]" [arg-type]
iotests.py:467: error: Incompatible return value type (got
"Union[object, Any]", expected "Dict[str, Any]") [return-value]
Found 3 errors in 1 file (checked 32 source files)
You need to assert that self._qmp is not None for the first; the
second seems to do with a potentially "None" argument for args, and
the third has to do with the difference between returning the entire
raw response and just the return value.
I started making a fixup branch, but I stopped around here.
https://gitlab.com/jsnow/qemu/-/commits/vlad-iotest-patches
> def stop(self, kill_signal=15):
> self._p.send_signal(kill_signal)
> self._p.wait()
> --
> 2.34.1
>
- [PATCH v4 00/11] iotests: use vm.cmd(), Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 01/11] python: rename QEMUMonitorProtocol.cmd() to cmd_raw(), Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 03/11] python/machine.py: upgrade vm.cmd() method, Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 04/11] iotests: QemuStorageDaemon: add cmd() method like in QEMUMachine., Vladimir Sementsov-Ogievskiy, 2023/01/10
- Re: [PATCH v4 04/11] iotests: QemuStorageDaemon: add cmd() method like in QEMUMachine.,
John Snow <=
- [PATCH v4 02/11] python/qemu: rename command() to cmd(), Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 05/11] iotests: add some missed checks of qmp result, Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 06/11] iotests: refactor some common qmp result checks into generic pattern, Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 07/11] iotests: drop some occasional semicolons, Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 08/11] iotests: drop some extra ** in qmp() call, Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 09/11] iotests.py: pause_job(): drop return value, Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 10/11] tests/vm/basevm.py: use cmd() instead of qmp(), Vladimir Sementsov-Ogievskiy, 2023/01/10
- [PATCH v4 11/11] python: use vm.cmd() instead of vm.qmp() where appropriate, Vladimir Sementsov-Ogievskiy, 2023/01/10