On Fri, Oct 6, 2023 at 11:41 AM Vladimir Sementsov-Ogievskiy <vsement...@yandex-team.ru> wrote: > > Hi all! > > Let's get rid of pattern > > result = self.vm.qmp(...) > self.assert_qmp(result, 'return', {}) > > And switch to just > > self.vm.cmd(...) > > v7: add r-bs and small wording/grammar fixes by Eric > 05: handle missed tests/avocado/machine_aspeed.py, keep r-bs > 10: patch renamed: s/occasional/extra/ > 14: new > 15: rebuilt with the script: some hunks are added, old are unchanged > (look comparison with previous version in patchew or by > git check-rebase) > > Vladimir Sementsov-Ogievskiy (15): > python/qemu/qmp/legacy: cmd(): drop cmd_id unused argument > qmp_shell.py: _fill_completion() use .command() instead of .cmd() > scripts/cpu-x86-uarch-abi.py: use .command() instead of .cmd() > python: rename QEMUMonitorProtocol.cmd() to cmd_raw() > python/qemu: rename command() to cmd() > python/machine.py: upgrade vm.cmd() method > iotests: QemuStorageDaemon: add cmd() method like in QEMUMachine. > iotests: add some missed checks of qmp result > iotests: refactor some common qmp result checks into generic pattern > iotests: drop some extra semicolons > iotests: drop some extra ** in qmp() call > iotests.py: pause_job(): drop return value > tests/vm/basevm.py: use cmd() instead of qmp() > scripts: add python_qmp_updater.py > python: use vm.cmd() instead of vm.qmp() where appropriate > > docs/devel/testing.rst | 10 +- > python/qemu/machine/machine.py | 20 +- > python/qemu/qmp/legacy.py | 10 +- > python/qemu/qmp/qmp_shell.py | 20 +- > python/qemu/utils/qemu_ga_client.py | 2 +- > python/qemu/utils/qom.py | 8 +- > python/qemu/utils/qom_common.py | 2 +- > python/qemu/utils/qom_fuse.py | 6 +- > scripts/cpu-x86-uarch-abi.py | 8 +- > scripts/device-crash-test | 8 +- > scripts/python_qmp_updater.py | 136 +++++ > scripts/render_block_graph.py | 8 +- > tests/avocado/avocado_qemu/__init__.py | 4 +- > tests/avocado/cpu_queries.py | 5 +- > tests/avocado/hotplug_cpu.py | 10 +- > tests/avocado/info_usernet.py | 4 +- > tests/avocado/machine_arm_integratorcp.py | 6 +- > tests/avocado/machine_aspeed.py | 12 +- > tests/avocado/machine_m68k_nextcube.py | 4 +- > tests/avocado/machine_mips_malta.py | 6 +- > tests/avocado/machine_s390_ccw_virtio.py | 28 +- > tests/avocado/migration.py | 10 +- > tests/avocado/pc_cpu_hotplug_props.py | 2 +- > tests/avocado/version.py | 4 +- > tests/avocado/virtio_check_params.py | 6 +- > tests/avocado/virtio_version.py | 5 +- > tests/avocado/vnc.py | 16 +- > tests/avocado/x86_cpu_model_versions.py | 13 +- > tests/migration/guestperf/engine.py | 150 +++--- > tests/qemu-iotests/030 | 168 +++--- > tests/qemu-iotests/040 | 171 +++---- > tests/qemu-iotests/041 | 482 ++++++++---------- > tests/qemu-iotests/045 | 15 +- > tests/qemu-iotests/055 | 62 +-- > tests/qemu-iotests/056 | 77 ++- > tests/qemu-iotests/093 | 42 +- > tests/qemu-iotests/118 | 225 ++++---- > tests/qemu-iotests/124 | 102 ++-- > tests/qemu-iotests/129 | 14 +- > tests/qemu-iotests/132 | 5 +- > tests/qemu-iotests/139 | 45 +- > tests/qemu-iotests/147 | 30 +- > tests/qemu-iotests/151 | 103 ++-- > tests/qemu-iotests/152 | 8 +- > tests/qemu-iotests/155 | 55 +- > tests/qemu-iotests/165 | 8 +- > tests/qemu-iotests/196 | 3 +- > tests/qemu-iotests/205 | 6 +- > tests/qemu-iotests/218 | 105 ++-- > tests/qemu-iotests/245 | 245 ++++----- > tests/qemu-iotests/256 | 34 +- > tests/qemu-iotests/257 | 36 +- > tests/qemu-iotests/264 | 31 +- > tests/qemu-iotests/281 | 21 +- > tests/qemu-iotests/295 | 16 +- > tests/qemu-iotests/296 | 21 +- > tests/qemu-iotests/298 | 13 +- > tests/qemu-iotests/300 | 54 +- > tests/qemu-iotests/iotests.py | 21 +- > .../tests/backing-file-invalidation | 11 +- > tests/qemu-iotests/tests/copy-before-write | 15 +- > .../tests/export-incoming-iothread | 6 +- > .../qemu-iotests/tests/graph-changes-while-io | 18 +- > tests/qemu-iotests/tests/image-fleecing | 3 +- > .../tests/migrate-bitmaps-postcopy-test | 31 +- > tests/qemu-iotests/tests/migrate-bitmaps-test | 45 +- > .../qemu-iotests/tests/migrate-during-backup | 41 +- > .../qemu-iotests/tests/migration-permissions | 9 +- > .../tests/mirror-ready-cancel-error | 74 ++- > tests/qemu-iotests/tests/mirror-top-perms | 16 +- > tests/qemu-iotests/tests/nbd-multiconn | 12 +- > tests/qemu-iotests/tests/reopen-file | 3 +- > .../qemu-iotests/tests/stream-error-on-reset | 6 +- > .../qemu-iotests/tests/stream-under-throttle | 7 +- > tests/vm/basevm.py | 4 +- > 75 files changed, 1367 insertions(+), 1675 deletions(-) > create mode 100755 scripts/python_qmp_updater.py > > -- > 2.34.1 >
I rebased this on top of my python branch today and confirmed all of my python tests pass - I'm happy enough with it from the Python perspective. I think it's the right thing to do, and I'm happy you did it, but I can't begin to pretend I audited the rewrite script or the actual output it produced - I did not. But: Reviewed-by: John Snow <js...@redhat.com> (Patches 1-6, Patch 13) Tested-by: John Snow <js...@redhat.com> (All - I went patch by patch and ran my Python tests and made sure nothing regressed.) Acked-by: John Snow <js...@redhat.com> (All) --js