[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 03/22] qemu-iotests: Support varargs syntax in FilePaths
From: |
Max Reitz |
Subject: |
[PULL 03/22] qemu-iotests: Support varargs syntax in FilePaths |
Date: |
Tue, 15 Sep 2020 12:46:08 +0200 |
From: Nir Soffer <nirsof@gmail.com>
Accept variable number of names instead of a sequence:
with FilePaths("a", "b", "c") as (a, b, c):
The disadvantage is that base_dir must be used as kwarg:
with FilePaths("a", "b", base_dir=soc_dir) as (sock1, sock2):
But this is more clear and calling optional argument as positional
arguments is bad idea anyway.
Signed-off-by: Nir Soffer <nsoffer@redhat.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Message-Id: <20200828232152.205833-4-nsoffer@redhat.com>
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
tests/qemu-iotests/194 | 4 ++--
tests/qemu-iotests/257 | 10 ++++------
tests/qemu-iotests/iotests.py | 8 ++++----
3 files changed, 10 insertions(+), 12 deletions(-)
diff --git a/tests/qemu-iotests/194 b/tests/qemu-iotests/194
index da7c4265ec..08389f474e 100755
--- a/tests/qemu-iotests/194
+++ b/tests/qemu-iotests/194
@@ -26,8 +26,8 @@ iotests.script_initialize(supported_fmts=['qcow2', 'qed',
'raw'],
with iotests.FilePath('source.img') as source_img_path, \
iotests.FilePath('dest.img') as dest_img_path, \
- iotests.FilePaths(['migration.sock', 'nbd.sock'], iotests.sock_dir) as \
- [migration_sock_path, nbd_sock_path], \
+ iotests.FilePaths('migration.sock', 'nbd.sock',
base_dir=iotests.sock_dir) \
+ as (migration_sock_path, nbd_sock_path), \
iotests.VM('source') as source_vm, \
iotests.VM('dest') as dest_vm:
diff --git a/tests/qemu-iotests/257 b/tests/qemu-iotests/257
index e1e6077219..a9aa65bbe3 100755
--- a/tests/qemu-iotests/257
+++ b/tests/qemu-iotests/257
@@ -275,10 +275,9 @@ def test_bitmap_sync(bsync_mode, msync_mode='bitmap',
failure=None):
an incomplete backup. Testing limitations prevent
testing competing writes.
"""
- with iotests.FilePaths(['img', 'bsync1', 'bsync2',
- 'fbackup0', 'fbackup1', 'fbackup2']) as \
- (img_path, bsync1, bsync2,
- fbackup0, fbackup1, fbackup2), \
+ with iotests.FilePaths(
+ 'img', 'bsync1', 'bsync2', 'fbackup0', 'fbackup1', 'fbackup2') as \
+ (img_path, bsync1, bsync2, fbackup0, fbackup1, fbackup2), \
iotests.VM() as vm:
mode = "Mode {:s}; Bitmap Sync {:s}".format(msync_mode, bsync_mode)
@@ -441,8 +440,7 @@ def test_backup_api():
"""
Test malformed and prohibited invocations of the backup API.
"""
- with iotests.FilePaths(['img', 'bsync1']) as \
- (img_path, backup_path), \
+ with iotests.FilePaths('img', 'bsync1') as (img_path, backup_path), \
iotests.VM() as vm:
log("\n=== API failure tests ===\n")
diff --git a/tests/qemu-iotests/iotests.py b/tests/qemu-iotests/iotests.py
index bbe63a6da0..635ec99431 100644
--- a/tests/qemu-iotests/iotests.py
+++ b/tests/qemu-iotests/iotests.py
@@ -455,7 +455,7 @@ class FilePaths:
Example usage:
- with FilePaths(['a.img', 'b.img']) as (img_a, img_b):
+ with FilePaths('a.img', 'b.img') as (img_a, img_b):
# Use img_a and img_b here...
# a.img and b.img are automatically removed here.
@@ -463,10 +463,10 @@ class FilePaths:
By default images are created in iotests.test_dir. To create sockets use
iotests.sock_dir:
- with FilePaths(['a.sock'], base_dir=iotests.sock_dir) as (sock,):
+ with FilePaths('a.sock', base_dir=iotests.sock_dir) as (sock,):
"""
- def __init__(self, names, base_dir=test_dir):
+ def __init__(self, *names, base_dir=test_dir):
self.paths = []
for name in names:
self.paths.append(os.path.join(base_dir, file_pattern(name)))
@@ -487,7 +487,7 @@ class FilePath(FilePaths):
FilePath is a specialization of FilePaths that takes a single filename.
"""
def __init__(self, name, base_dir=test_dir):
- super(FilePath, self).__init__([name], base_dir)
+ super(FilePath, self).__init__(name, base_dir=base_dir)
def __enter__(self):
return self.paths[0]
--
2.26.2
- [PULL 00/22] Block patches, Max Reitz, 2020/09/15
- [PULL 01/22] qemu-iotests: Fix FilePaths cleanup, Max Reitz, 2020/09/15
- [PULL 02/22] qemu-iotests: Fix FilePaths docstring, Max Reitz, 2020/09/15
- [PULL 03/22] qemu-iotests: Support varargs syntax in FilePaths,
Max Reitz <=
- [PULL 04/22] qemu-iotests: Merge FilePaths and FilePath, Max Reitz, 2020/09/15
- [PULL 05/22] qemu-iotests: Simplify FilePath __init__, Max Reitz, 2020/09/15
- [PULL 07/22] qemu-img: avoid unaligned read requests during convert, Max Reitz, 2020/09/15
- [PULL 06/22] block/quorum.c: stable children names, Max Reitz, 2020/09/15
- [PULL 08/22] qcow2: Use macros for the L1, refcount and bitmap table entry sizes, Max Reitz, 2020/09/15
- [PULL 09/22] qcow2: Fix removal of list members from BDRVQcow2State.cluster_allocs, Max Reitz, 2020/09/15
- [PULL 11/22] qcow2: Rewrite the documentation of qcow2_alloc_cluster_offset(), Max Reitz, 2020/09/15
- [PULL 10/22] qcow2: Don't check nb_clusters when removing l2meta from the list, Max Reitz, 2020/09/15
- [PULL 13/22] iotests: Skip test_stream_parallel in test 030 when doing "make check", Max Reitz, 2020/09/15
- [PULL 14/22] block/vhdx: Support vhdx image only with 512 bytes logical sector size, Max Reitz, 2020/09/15