1*713d76e8SChristoph Hellwig#!/bin/sh 2*713d76e8SChristoph Hellwig# 3*713d76e8SChristoph Hellwig# Test handling of invalid patterns arguments to qemu-io 4*713d76e8SChristoph Hellwig# 5*713d76e8SChristoph Hellwig# Copyright (C) 2009 Red Hat, Inc. 6*713d76e8SChristoph Hellwig# 7*713d76e8SChristoph Hellwig# This program is free software; you can redistribute it and/or modify 8*713d76e8SChristoph Hellwig# it under the terms of the GNU General Public License as published by 9*713d76e8SChristoph Hellwig# the Free Software Foundation; either version 2 of the License, or 10*713d76e8SChristoph Hellwig# (at your option) any later version. 11*713d76e8SChristoph Hellwig# 12*713d76e8SChristoph Hellwig# This program is distributed in the hope that it will be useful, 13*713d76e8SChristoph Hellwig# but WITHOUT ANY WARRANTY; without even the implied warranty of 14*713d76e8SChristoph Hellwig# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15*713d76e8SChristoph Hellwig# GNU General Public License for more details. 16*713d76e8SChristoph Hellwig# 17*713d76e8SChristoph Hellwig# You should have received a copy of the GNU General Public License 18*713d76e8SChristoph Hellwig# along with this program. If not, see <http://www.gnu.org/licenses/>. 19*713d76e8SChristoph Hellwig# 20*713d76e8SChristoph Hellwig 21*713d76e8SChristoph Hellwig# creator 22*713d76e8SChristoph Hellwigowner=hch@lst.de 23*713d76e8SChristoph Hellwig 24*713d76e8SChristoph Hellwigseq=`basename $0` 25*713d76e8SChristoph Hellwigecho "QA output created by $seq" 26*713d76e8SChristoph Hellwig 27*713d76e8SChristoph Hellwighere=`pwd` 28*713d76e8SChristoph Hellwigtmp=/tmp/$$ 29*713d76e8SChristoph Hellwigstatus=1 # failure is the default! 30*713d76e8SChristoph Hellwig 31*713d76e8SChristoph Hellwig_cleanup() 32*713d76e8SChristoph Hellwig{ 33*713d76e8SChristoph Hellwig _cleanup_test_img 34*713d76e8SChristoph Hellwig} 35*713d76e8SChristoph Hellwigtrap "_cleanup; exit \$status" 0 1 2 3 15 36*713d76e8SChristoph Hellwig 37*713d76e8SChristoph Hellwig# get standard environment, filters and checks 38*713d76e8SChristoph Hellwig. ./common.rc 39*713d76e8SChristoph Hellwig. ./common.filter 40*713d76e8SChristoph Hellwig 41*713d76e8SChristoph Hellwig_supported_fmt generic 42*713d76e8SChristoph Hellwig_supported_os Linux 43*713d76e8SChristoph Hellwig 44*713d76e8SChristoph Hellwig 45*713d76e8SChristoph Hellwigsize=128M 46*713d76e8SChristoph Hellwig_make_test_img $size 47*713d76e8SChristoph Hellwig 48*713d76e8SChristoph HellwigINVALID_PATTERNS="-1 300 12m 4k route66" 49*713d76e8SChristoph HellwigTEST_OPS="writev read write readv aio_read aio_write" 50*713d76e8SChristoph Hellwig 51*713d76e8SChristoph Hellwigfor pattern in $INVALID_PATTERNS; do 52*713d76e8SChristoph Hellwig for op in $TEST_OPS; do 53*713d76e8SChristoph Hellwig echo 54*713d76e8SChristoph Hellwig echo "== testing $op -P $pattern ==" 55*713d76e8SChristoph Hellwig $QEMU_IO -c "$op -P $pattern 0 4096" $TEST_IMG | _filter_qemu_io 56*713d76e8SChristoph Hellwig done 57*713d76e8SChristoph Hellwigdone 58*713d76e8SChristoph Hellwig 59*713d76e8SChristoph Hellwig# success, all done 60*713d76e8SChristoph Hellwigecho "*** done" 61*713d76e8SChristoph Hellwigrm -f $seq.full 62*713d76e8SChristoph Hellwigstatus=0 63