qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 14/18] iotests: Make 110 work with data_file


From: Max Reitz
Subject: Re: [PATCH 14/18] iotests: Make 110 work with data_file
Date: Mon, 30 Sep 2019 15:34:56 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.0

On 29.09.19 18:34, Maxim Levitsky wrote:
> On Fri, 2019-09-27 at 11:42 +0200, Max Reitz wrote:
>> The only difference is that the json:{} filename of the image looks
>> different.  We actually do not care about that filename in this test, we
>> are only interested in (1) that there is a json:{} filename, and (2)
>> whether the backing filename can be constructed.
>>
>> So just filter out the json:{} data, thus making this test pass both
>> with and without data_file.
>>
>> Signed-off-by: Max Reitz <address@hidden>
>> ---
>>  tests/qemu-iotests/110     | 7 +++++--
>>  tests/qemu-iotests/110.out | 4 ++--
>>  2 files changed, 7 insertions(+), 4 deletions(-)
>>
>> diff --git a/tests/qemu-iotests/110 b/tests/qemu-iotests/110
>> index f78df0e6e1..34459dcd60 100755
>> --- a/tests/qemu-iotests/110
>> +++ b/tests/qemu-iotests/110
>> @@ -67,6 +67,7 @@ echo
>>  # Across blkdebug without a config file, you cannot reconstruct filenames, 
>> so
>>  # qemu is incapable of knowing the directory of the top image from the 
>> filename
>>  # alone. However, using bdrv_dirname(), it should still work.
>> +# (Filter out the json:{} filename so this test works with external data 
>> files)
>>  TEST_IMG="json:{
>>      'driver': '$IMGFMT',
>>      'file': {
>> @@ -82,7 +83,8 @@ TEST_IMG="json:{
>>              }
>>          ]
>>      }
>> -}" _img_info | _filter_img_info | grep -v 'backing file format'
>> +}" _img_info | _filter_img_info | grep -v 'backing file format' \
>> +    | sed -e 's#^image: json:.*#image: json:{ /* filtered */ }#'
>>  
>>  echo
>>  echo '=== Backing name is always relative to the backed image ==='
>> @@ -114,7 +116,8 @@ TEST_IMG="json:{
>>              }
>>          ]
>>      }
>> -}" _img_info | _filter_img_info | grep -v 'backing file format'
>> +}" _img_info | _filter_img_info | grep -v 'backing file format' \
>> +    | sed -e 's#^image: json:.*#image: json:{ /* filtered */ }#'
>>  
>>  
>>  # success, all done
>> diff --git a/tests/qemu-iotests/110.out b/tests/qemu-iotests/110.out
>> index f60b26390e..f835553a99 100644
>> --- a/tests/qemu-iotests/110.out
>> +++ b/tests/qemu-iotests/110.out
>> @@ -11,7 +11,7 @@ backing file: t.IMGFMT.base (actual path: 
>> TEST_DIR/t.IMGFMT.base)
>>  
>>  === Non-reconstructable filename ===
>>  
>> -image: json:{"driver": "IMGFMT", "file": {"set-state.0.event": "read_aio", 
>> "image": {"driver": "file", "filename": "TEST_DIR/t.IMGFMT"}, "driver": 
>> "blkdebug", "set-state.0.new_state": 42}}
>> +image: json:{ /* filtered */ }
>>  file format: IMGFMT
>>  virtual size: 64 MiB (67108864 bytes)
>>  backing file: t.IMGFMT.base (actual path: TEST_DIR/t.IMGFMT.base)
>> @@ -22,7 +22,7 @@ Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=67108864 
>> backing_file=t.IMGFMT.b
>>  
>>  === Nodes without a common directory ===
>>  
>> -image: json:{"driver": "IMGFMT", "file": {"children": [{"driver": "file", 
>> "filename": "TEST_DIR/t.IMGFMT"}, {"driver": "file", "filename": 
>> "TEST_DIR/t.IMGFMT.copy"}], "driver": "quorum", "vote-
>> threshold": 1}}
>> +image: json:{ /* filtered */ }
>>  file format: IMGFMT
>>  virtual size: 64 MiB (67108864 bytes)
>>  backing file: t.IMGFMT.base (cannot determine actual path)
> 
> Again, maybe put that into the common.filter, so new tests won't need to 
> copy&paste this?

Good idea.

> Also maybe remove the image name completely from output, thus not needing the 
> more complex regex?

I’d prefer to still see that there is a json:{} filename instead of a
plain one.  (This is important in this test because for plain filenames,
it’s generally easy to reconstruct the backing file path; it’s only
difficult for json:{} filenames.)

Max

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]