qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 06/17] iotests: Drop format-specific in _filter_


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH 06/17] iotests: Drop format-specific in _filter_img_info
Date: Thu, 30 Nov 2017 11:16:46 +0800
User-agent: Mutt/1.9.1 (2017-09-22)

On Thu, 11/23 03:08, Max Reitz wrote:
> _filter_img_info should remove format-specific information, too.  We
> already have such a filter in _img_info, and it is very useful for
> query-block-named-block-nodes (etc.), too.
> 
> However, in 198 we need that information (but we still want the rest of
> the filter), so make that filtering optional.  Note that "the rest of
> the filter" includes filtering of the test directory, so we can drop the
> _filter_testdir from 198 at the same time.
> 
> Signed-off-by: Max Reitz <address@hidden>
> ---
>  tests/qemu-iotests/198           |  6 ++++--
>  tests/qemu-iotests/common.filter | 29 ++++++++++++++++++++++++++++-
>  2 files changed, 32 insertions(+), 3 deletions(-)
> 
> diff --git a/tests/qemu-iotests/198 b/tests/qemu-iotests/198
> index 34ef666381..a84a058396 100755
> --- a/tests/qemu-iotests/198
> +++ b/tests/qemu-iotests/198
> @@ -91,11 +91,13 @@ $QEMU_IO --object $SECRET0 --object $SECRET1 -c "read -P 
> 0x9 0 $size" --image-op
>  
>  echo
>  echo "== checking image base =="
> -$QEMU_IMG info --image-opts $IMGSPECBASE | _filter_img_info | 
> _filter_testdir | sed -e "/^disk size:/ D"
> +$QEMU_IMG info --image-opts $IMGSPECBASE | _filter_img_info 
> --format-specific \
> +    | sed -e "/^disk size:/ D"
>  
>  echo
>  echo "== checking image layer =="
> -$QEMU_IMG info --image-opts $IMGSPECLAYER | _filter_img_info | 
> _filter_testdir | sed -e "/^disk size:/ D"
> +$QEMU_IMG info --image-opts $IMGSPECLAYER | _filter_img_info 
> --format-specific \
> +    | sed -e "/^disk size:/ D"
>  
>  
>  # success, all done
> diff --git a/tests/qemu-iotests/common.filter 
> b/tests/qemu-iotests/common.filter
> index d9237799e9..0c0e53fae7 100644
> --- a/tests/qemu-iotests/common.filter
> +++ b/tests/qemu-iotests/common.filter
> @@ -139,6 +139,15 @@ _filter_img_create()
>  
>  _filter_img_info()
>  {
> +    if [[ "$1" == "--format-specific" ]]; then
> +        local format_specific=1
> +        shift
> +    else
> +        local format_specific=0
> +    fi
> +
> +    discard=0
> +    regex_json_spec_start='^ *"format-specific": \{'
>      sed -e "s#$IMGPROTO:$TEST_DIR#TEST_DIR#g" \
>          -e "s#$TEST_DIR#TEST_DIR#g" \
>          -e "s#$IMGFMT#IMGFMT#g" \
> @@ -159,7 +168,25 @@ _filter_img_info()
>          -e "/block_state_zero: \\(on\\|off\\)/d" \
>          -e "/log_size: [0-9]\\+/d" \
>          -e "s/iters: [0-9]\\+/iters: 1024/" \
> -        -e "s/uuid: [-a-f0-9]\\+/uuid: 00000000-0000-0000-0000-000000000000/"
> +        -e "s/uuid: [-a-f0-9]\\+/uuid: 
> 00000000-0000-0000-0000-000000000000/" | \
> +    while IFS='' read -r line; do
> +        if [[ $format_specific == 1 ]]; then
> +            discard=0
> +        elif [[ $line == "Format specific information:" ]]; then
> +            discard=1
> +        elif [[ $line =~ $regex_json_spec_start ]]; then
> +            discard=2
> +            regex_json_spec_end="^${line%%[^ ]*}\\},? *$"
> +        fi
> +        if [[ $discard == 0 ]]; then
> +            echo "$line"
> +        elif [[ $discard == 1 && ! $line ]]; then

s/\$line/"\$line"/ ?

> +            echo
> +            discard=0
> +        elif [[ $discard == 2 && $line =~ $regex_json_spec_end ]]; then

Ditto.

> +            discard=0
> +        fi
> +    done
>  }
>  
>  # filter out offsets and file names from qemu-img map; good for both
> -- 
> 2.13.6
> 



reply via email to

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