Statistics
| Branch: | Revision:

root / tests / qemu-iotests / 048 @ a8aec295

History | View | Annotate | Download (1.7 kB)

1
#!/bin/bash
2
##
3
## qemu-img compare test
4
##
5
##
6
## Copyright (C) 2013 Red Hat, Inc.
7
##
8
## This program is free software; you can redistribute it and/or modify
9
## it under the terms of the GNU General Public License as published by
10
## the Free Software Foundation; either version 2 of the License, or
11
## (at your option) any later version.
12
##
13
## This program is distributed in the hope that it will be useful,
14
## but WITHOUT ANY WARRANTY; without even the implied warranty of
15
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
## GNU General Public License for more details.
17
##
18
## You should have received a copy of the GNU General Public License
19
## along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
##
21
#
22
# creator
23
owner=mrezanin@redhat.com
24

    
25
seq=`basename $0`
26
echo "QA output created by $seq"
27

    
28
status=1        # failure is the default!
29

    
30
_cleanup()
31
{
32
    echo "Cleanup"
33
    _cleanup_test_img
34
    rm ${TEST_IMG2}
35
}
36
trap "_cleanup; exit \$status" 0 1 2 3 15
37

    
38
_compare()
39
{
40
    $QEMU_IMG compare "$@" $TEST_IMG ${TEST_IMG2}
41
    echo $?
42
}
43

    
44
# get standard environment, filters and checks
45
. ./common.rc
46
. ./common.filter
47
. ./common.pattern
48

    
49
_supported_fmt raw qcow qcow2 qed
50
_supported_proto file
51
_supported_os Linux
52

    
53
# Setup test basic parameters
54
TEST_IMG2=$TEST_IMG.2
55
CLUSTER_SIZE=4096
56
size=1024M
57

    
58
_make_test_img $size
59
io_pattern write 524288 $CLUSTER_SIZE $CLUSTER_SIZE 4 45
60

    
61
# Compare identical images
62
cp $TEST_IMG ${TEST_IMG2}
63
_compare
64
_compare -q
65

    
66
# Compare images with different size
67
$QEMU_IMG resize $TEST_IMG +512M
68
_compare
69
_compare -s
70

    
71
# Compare images with different content
72
io_pattern write 1228800 $CLUSTER_SIZE 0 1 67
73
_compare
74
io_pattern write 0 $CLUSTER_SIZE 0 1 123
75
_compare
76

    
77
# Cleanup
78
status=0