diff mbox series

iotests/common.pattern: Quote echos

Message ID 20200403101134.805871-1-mreitz@redhat.com
State New
Headers show
Series iotests/common.pattern: Quote echos | expand

Commit Message

Max Reitz April 3, 2020, 10:11 a.m. UTC
From time to time, my shell decides to repace the bracketed numbers here
by the numbers inside (i.e., "=== Clusters to be compressed [1]" is
printed as "=== Clusters to be compressed 1").  That makes tests that
use common.pattern fail.  Prevent that from happening by quoting the
arguments to all echos in common.pattern.

Signed-off-by: Max Reitz <mreitz@redhat.com>
---
 tests/qemu-iotests/common.pattern | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

Comments

Philippe Mathieu-Daudé April 3, 2020, 10:20 a.m. UTC | #1
On 4/3/20 12:11 PM, Max Reitz wrote:
>  From time to time, my shell decides to repace the bracketed numbers here
> by the numbers inside (i.e., "=== Clusters to be compressed [1]" is
> printed as "=== Clusters to be compressed 1").  That makes tests that
> use common.pattern fail.  Prevent that from happening by quoting the
> arguments to all echos in common.pattern.
> 
> Signed-off-by: Max Reitz <mreitz@redhat.com>

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>

> ---
>   tests/qemu-iotests/common.pattern | 22 +++++++++++-----------
>   1 file changed, 11 insertions(+), 11 deletions(-)
> 
> diff --git a/tests/qemu-iotests/common.pattern b/tests/qemu-iotests/common.pattern
> index 4f5e5bcea0..4caa5de187 100644
> --- a/tests/qemu-iotests/common.pattern
> +++ b/tests/qemu-iotests/common.pattern
> @@ -23,7 +23,7 @@ do_is_allocated() {
>       local count=$4
>   
>       for ((i=1;i<=$count;i++)); do
> -        echo alloc $(( start + (i - 1) * step )) $size
> +        echo "alloc $(( start + (i - 1) * step )) $size"
>       done
>   }
>   
> @@ -39,9 +39,9 @@ do_io() {
>       local count=$5
>       local pattern=$6
>   
> -    echo === IO: pattern $pattern >&2
> +    echo "=== IO: pattern $pattern" >&2
>       for ((i=1;i<=$count;i++)); do
> -        echo $op -P $pattern $(( start + (i - 1) * step )) $size
> +        echo "$op -P $pattern $(( start + (i - 1) * step )) $size"
>       done
>   }
>   
> @@ -110,31 +110,31 @@ io_test2() {
>       #        free - free - compressed
>   
>       # Write the clusters to be compressed
> -    echo === Clusters to be compressed [1]
> +    echo '=== Clusters to be compressed [1]'
>       io_pattern writev $((offset + 4 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
> -    echo === Clusters to be compressed [2]
> +    echo '=== Clusters to be compressed [2]'
>       io_pattern writev $((offset + 5 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
> -    echo === Clusters to be compressed [3]
> +    echo '=== Clusters to be compressed [3]'
>       io_pattern writev $((offset + 8 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
>   
>       mv "$TEST_IMG" "$TEST_IMG.orig"
>       $QEMU_IMG convert -f $IMGFMT -O $IMGFMT -c "$TEST_IMG.orig" "$TEST_IMG"
>   
>       # Write the used clusters
> -    echo === Used clusters [1]
> +    echo '=== Used clusters [1]'
>       io_pattern writev $((offset + 0 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
> -    echo === Used clusters [2]
> +    echo '=== Used clusters [2]'
>       io_pattern writev $((offset + 1 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
> -    echo === Used clusters [3]
> +    echo '=== Used clusters [3]'
>       io_pattern writev $((offset + 3 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
>   
>       # Read them
> -    echo === Read used/compressed clusters
> +    echo '=== Read used/compressed clusters'
>       io_pattern readv $((offset + 0 * $cluster_size)) $((2 * $cluster_size)) $((9 * $cluster_size)) $num 165
>       io_pattern readv $((offset + 3 * $cluster_size)) $((3 * $cluster_size)) $((9 * $cluster_size)) $num 165
>       io_pattern readv $((offset + 8 * $cluster_size)) $((1 * $cluster_size)) $((9 * $cluster_size)) $num 165
>   
> -    echo === Read zeros
> +    echo '=== Read zeros'
>       io_zero readv $((offset + 2 * $cluster_size)) $((1 * $cluster_size)) $((9 * $cluster_size)) $num
>       io_zero readv $((offset + 6 * $cluster_size)) $((2 * $cluster_size)) $((9 * $cluster_size)) $num
>   }
>
Eric Blake April 3, 2020, 1:39 p.m. UTC | #2
On 4/3/20 5:11 AM, Max Reitz wrote:
>>From time to time, my shell decides to repace the bracketed numbers here
> by the numbers inside (i.e., "=== Clusters to be compressed [1]" is
> printed as "=== Clusters to be compressed 1").  That makes tests that

Namely, any time your environment has a file named '1' in the directory 
where you are running iotests.

> use common.pattern fail.  Prevent that from happening by quoting the
> arguments to all echos in common.pattern.
> 
> Signed-off-by: Max Reitz <mreitz@redhat.com>
> ---
>   tests/qemu-iotests/common.pattern | 22 +++++++++++-----------
>   1 file changed, 11 insertions(+), 11 deletions(-)
> 
> diff --git a/tests/qemu-iotests/common.pattern b/tests/qemu-iotests/common.pattern
> index 4f5e5bcea0..4caa5de187 100644
> --- a/tests/qemu-iotests/common.pattern
> +++ b/tests/qemu-iotests/common.pattern
> @@ -23,7 +23,7 @@ do_is_allocated() {
>       local count=$4
>   
>       for ((i=1;i<=$count;i++)); do
> -        echo alloc $(( start + (i - 1) * step )) $size
> +        echo "alloc $(( start + (i - 1) * step )) $size"

No real change on this line because $size is safe, but also no harm at 
being consistent, and makes it easier to not have to audit $size for 
being safe.

>       # Write the clusters to be compressed
> -    echo === Clusters to be compressed [1]
> +    echo '=== Clusters to be compressed [1]'

This one is definitely needed to avoid inadvertent globbing.

>       # Read them
> -    echo === Read used/compressed clusters
> +    echo '=== Read used/compressed clusters'

And this one does not buy any safety, but again consistency doesn't hurt.

Reviewed-by: Eric Blake <eblake@redhat.com>
Max Reitz April 7, 2020, 8:59 a.m. UTC | #3
On 03.04.20 12:11, Max Reitz wrote:
> From time to time, my shell decides to repace the bracketed numbers here
> by the numbers inside (i.e., "=== Clusters to be compressed [1]" is
> printed as "=== Clusters to be compressed 1").  That makes tests that
> use common.pattern fail.  Prevent that from happening by quoting the
> arguments to all echos in common.pattern.
> 
> Signed-off-by: Max Reitz <mreitz@redhat.com>
> ---
>  tests/qemu-iotests/common.pattern | 22 +++++++++++-----------
>  1 file changed, 11 insertions(+), 11 deletions(-)

Thanks for the reviews, applied to my block branch.

Max
diff mbox series

Patch

diff --git a/tests/qemu-iotests/common.pattern b/tests/qemu-iotests/common.pattern
index 4f5e5bcea0..4caa5de187 100644
--- a/tests/qemu-iotests/common.pattern
+++ b/tests/qemu-iotests/common.pattern
@@ -23,7 +23,7 @@  do_is_allocated() {
     local count=$4
 
     for ((i=1;i<=$count;i++)); do
-        echo alloc $(( start + (i - 1) * step )) $size
+        echo "alloc $(( start + (i - 1) * step )) $size"
     done
 }
 
@@ -39,9 +39,9 @@  do_io() {
     local count=$5
     local pattern=$6
 
-    echo === IO: pattern $pattern >&2
+    echo "=== IO: pattern $pattern" >&2
     for ((i=1;i<=$count;i++)); do
-        echo $op -P $pattern $(( start + (i - 1) * step )) $size
+        echo "$op -P $pattern $(( start + (i - 1) * step )) $size"
     done
 }
 
@@ -110,31 +110,31 @@  io_test2() {
     #        free - free - compressed
 
     # Write the clusters to be compressed
-    echo === Clusters to be compressed [1]
+    echo '=== Clusters to be compressed [1]'
     io_pattern writev $((offset + 4 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
-    echo === Clusters to be compressed [2]
+    echo '=== Clusters to be compressed [2]'
     io_pattern writev $((offset + 5 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
-    echo === Clusters to be compressed [3]
+    echo '=== Clusters to be compressed [3]'
     io_pattern writev $((offset + 8 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
 
     mv "$TEST_IMG" "$TEST_IMG.orig"
     $QEMU_IMG convert -f $IMGFMT -O $IMGFMT -c "$TEST_IMG.orig" "$TEST_IMG"
 
     # Write the used clusters
-    echo === Used clusters [1]
+    echo '=== Used clusters [1]'
     io_pattern writev $((offset + 0 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
-    echo === Used clusters [2]
+    echo '=== Used clusters [2]'
     io_pattern writev $((offset + 1 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
-    echo === Used clusters [3]
+    echo '=== Used clusters [3]'
     io_pattern writev $((offset + 3 * $cluster_size)) $cluster_size $((9 * $cluster_size)) $num 165
 
     # Read them
-    echo === Read used/compressed clusters
+    echo '=== Read used/compressed clusters'
     io_pattern readv $((offset + 0 * $cluster_size)) $((2 * $cluster_size)) $((9 * $cluster_size)) $num 165
     io_pattern readv $((offset + 3 * $cluster_size)) $((3 * $cluster_size)) $((9 * $cluster_size)) $num 165
     io_pattern readv $((offset + 8 * $cluster_size)) $((1 * $cluster_size)) $((9 * $cluster_size)) $num 165
 
-    echo === Read zeros
+    echo '=== Read zeros'
     io_zero readv $((offset + 2 * $cluster_size)) $((1 * $cluster_size)) $((9 * $cluster_size)) $num
     io_zero readv $((offset + 6 * $cluster_size)) $((2 * $cluster_size)) $((9 * $cluster_size)) $num
 }