mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-27 21:40:49 +00:00
iotests: Do not pipe _make_test_img
Executing _make_test_img as part of a pipe will undo all variable changes it has done. As such, this could not work with FUSE (because we want to remember all of our exports and their qemu instances). Replace the pipe by a temporary file in 071 and 174 (the two tests that can run on FUSE). Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Message-Id: <20201027190600.192171-9-mreitz@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
f96e59da1f
commit
d81fe252a2
@ -61,8 +61,17 @@ echo
|
|||||||
echo "=== Testing blkverify through filename ==="
|
echo "=== Testing blkverify through filename ==="
|
||||||
echo
|
echo
|
||||||
|
|
||||||
TEST_IMG="$TEST_IMG.base" IMGFMT="raw" _make_test_img --no-opts $IMG_SIZE |\
|
# _make_test_img may set variables that we need to retain. Everything
|
||||||
_filter_imgfmt
|
# in a pipe is executed in a subshell, so doing so would throw away
|
||||||
|
# all changes. Therefore, we have to store the output in some temp
|
||||||
|
# file and filter that.
|
||||||
|
scratch_out="$TEST_DIR/img-create.out"
|
||||||
|
|
||||||
|
TEST_IMG="$TEST_IMG.base" IMGFMT="raw" _make_test_img --no-opts $IMG_SIZE \
|
||||||
|
>"$scratch_out"
|
||||||
|
_filter_imgfmt <"$scratch_out"
|
||||||
|
rm -f "$scratch_out"
|
||||||
|
|
||||||
_make_test_img $IMG_SIZE
|
_make_test_img $IMG_SIZE
|
||||||
$QEMU_IO -c "open -o driver=raw,file.driver=blkverify,file.raw.filename=$TEST_IMG.base $TEST_IMG" \
|
$QEMU_IO -c "open -o driver=raw,file.driver=blkverify,file.raw.filename=$TEST_IMG.base $TEST_IMG" \
|
||||||
-c 'read 0 512' -c 'write -P 42 0x38000 512' -c 'read -P 42 0x38000 512' | _filter_qemu_io
|
-c 'read 0 512' -c 'write -P 42 0x38000 512' -c 'read -P 42 0x38000 512' | _filter_qemu_io
|
||||||
@ -76,8 +85,10 @@ echo
|
|||||||
echo "=== Testing blkverify through file blockref ==="
|
echo "=== Testing blkverify through file blockref ==="
|
||||||
echo
|
echo
|
||||||
|
|
||||||
TEST_IMG="$TEST_IMG.base" IMGFMT="raw" _make_test_img --no-opts $IMG_SIZE |\
|
TEST_IMG="$TEST_IMG.base" IMGFMT="raw" _make_test_img --no-opts $IMG_SIZE \
|
||||||
_filter_imgfmt
|
>"$scratch_out"
|
||||||
|
_filter_imgfmt <"$scratch_out"
|
||||||
|
|
||||||
_make_test_img $IMG_SIZE
|
_make_test_img $IMG_SIZE
|
||||||
$QEMU_IO -c "open -o driver=raw,file.driver=blkverify,file.raw.filename=$TEST_IMG.base,file.test.driver=$IMGFMT,file.test.file.filename=$TEST_IMG" \
|
$QEMU_IO -c "open -o driver=raw,file.driver=blkverify,file.raw.filename=$TEST_IMG.base,file.test.driver=$IMGFMT,file.test.file.filename=$TEST_IMG" \
|
||||||
-c 'read 0 512' -c 'write -P 42 0x38000 512' -c 'read -P 42 0x38000 512' | _filter_qemu_io
|
-c 'read 0 512' -c 'write -P 42 0x38000 512' -c 'read -P 42 0x38000 512' | _filter_qemu_io
|
||||||
|
@ -40,7 +40,15 @@ _unsupported_fmt raw
|
|||||||
|
|
||||||
|
|
||||||
size=256K
|
size=256K
|
||||||
IMGFMT=raw IMGKEYSECRET= _make_test_img --no-opts $size | _filter_imgfmt
|
|
||||||
|
# _make_test_img may set variables that we need to retain. Everything
|
||||||
|
# in a pipe is executed in a subshell, so doing so would throw away
|
||||||
|
# all changes. Therefore, we have to store the output in some temp
|
||||||
|
# file and filter that.
|
||||||
|
scratch_out="$TEST_DIR/img-create.out"
|
||||||
|
IMGFMT=raw IMGKEYSECRET= _make_test_img --no-opts $size >"$scratch_out"
|
||||||
|
_filter_imgfmt <"$scratch_out"
|
||||||
|
rm -f "$scratch_out"
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "== reading wrong format should fail =="
|
echo "== reading wrong format should fail =="
|
||||||
|
Loading…
Reference in New Issue
Block a user