iotests: Add test for unsupported image creation

Add a test for creating and amending images (amendment uses the creation
options) with formats not supporting creation over protocols not
supporting creation.

Cc: qemu-stable@nongnu.org
Signed-off-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
Max Reitz 2014-12-02 18:32:49 +01:00 committed by Kevin Wolf
parent f798068c56
commit 2247798d13
3 changed files with 92 additions and 0 deletions

76
tests/qemu-iotests/113 Executable file
View File

@ -0,0 +1,76 @@
#!/bin/bash
#
# Test case for accessing creation options on image formats and
# protocols not supporting image creation
#
# Copyright (C) 2014 Red Hat, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# creator
owner=mreitz@redhat.com
seq="$(basename $0)"
echo "QA output created by $seq"
here="$PWD"
tmp=/tmp/$$
status=1 # failure is the default!
_cleanup()
{
_cleanup_test_img
}
trap "_cleanup; exit \$status" 0 1 2 3 15
# get standard environment, filters and checks
. ./common.rc
. ./common.filter
# We can only test one format here because we need its sample file
_supported_fmt bochs
_supported_proto nbd
_supported_os Linux
echo
echo '=== Unsupported image creation in qemu-img create ==='
echo
$QEMU_IMG create -f $IMGFMT nbd://example.com 2>&1 64M | _filter_imgfmt
echo
echo '=== Unsupported image creation in qemu-img convert ==='
echo
# We could use any input image format here, but this is a bochs test, so just
# use the bochs image
_use_sample_img empty.bochs.bz2
$QEMU_IMG convert -f $IMGFMT -O $IMGFMT "$TEST_IMG" nbd://example.com 2>&1 \
| _filter_imgfmt
echo
echo '=== Unsupported format in qemu-img amend ==='
echo
# The protocol does not matter here
_use_sample_img empty.bochs.bz2
$QEMU_IMG amend -f $IMGFMT -o foo=bar "$TEST_IMG" 2>&1 | _filter_imgfmt
# success, all done
echo
echo '*** done'
rm -f $seq.full
status=0

View File

@ -0,0 +1,15 @@
QA output created by 113
=== Unsupported image creation in qemu-img create ===
qemu-img: nbd://example.com: Format driver 'IMGFMT' does not support image creation
=== Unsupported image creation in qemu-img convert ===
qemu-img: Format driver 'IMGFMT' does not support image creation
=== Unsupported format in qemu-img amend ===
qemu-img: Format driver 'IMGFMT' does not support any options to amend
*** done

View File

@ -113,4 +113,5 @@
108 rw auto quick 108 rw auto quick
109 rw auto 109 rw auto
111 rw auto quick 111 rw auto quick
113 rw auto quick
114 rw auto quick 114 rw auto quick