summaryrefslogtreecommitdiffstats
path: root/tests/i_qcow/script
blob: 6bf995edf1df4a2d980134661d4592c7b0ba0170 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
test_description="create/convert raw/qcow2 images"
if test -x $E2IMAGE_EXE; then

ORIG_IMAGES="image1024.orig image2048.orig image4096.orig"

RAW_IMG=_image.raw
QCOW2_IMG=_image.qcow2
QCOW2_TO_RAW=_image.qcow2.raw
OUT=$test_name.log
CRC=$SRCDIR/$test_name/$test_name.crc
CRC_TMP=$test_name.crc.tmp

rm -f $CRC_TMP $OUT >/dev/null 2>&1

(
for i in $ORIG_IMAGES; do
	ORIG_IMG=$test_name/$i
	echo $ORIG_IMG >> $CRC_TMP

	IMAGE=$(mktemp ${TMPDIR:-/tmp}/$i.XXXXXX)
	RAW_IMG="${IMAGE}.raw"
	QCOW2_IMG="${IMAGE}.qcow2"
	QCOW2_TO_RAW="${IMAGE}.qcow2.raw"

	bunzip2 < $SRCDIR/$ORIG_IMG.bz2 > $IMAGE
	echo "image		$($CRCSUM $IMAGE)" >> $CRC_TMP

	rm -f $RAW_IMG
	echo "e2image -r $ORIG_IMG $RAW_IMG"
	$E2IMAGE      -r $IMAGE $RAW_IMG
	echo "raw_image	$($CRCSUM $RAW_IMG)"  >> $CRC_TMP

	echo "e2image -Q $ORIG_IMG $QCOW2_IMG"
	$E2IMAGE      -Q $IMAGE $QCOW2_IMG
	echo "qcow_image	$($CRCSUM $QCOW2_IMG)"  >> $CRC_TMP

	rm -f $QCOW2_TO_RAW
	echo "e2image -r $QCOW2_IMG $QCOW2_TO_RAW"
	$E2IMAGE      -r $QCOW2_IMG $QCOW2_TO_RAW
	echo "qcow_to_raw	$($CRCSUM $QCOW2_TO_RAW)" >> $CRC_TMP

	rm -f $IMAGE $RAW_IMG $QCOW2_IMG $QCOW2_TO_RAW
done
) >> $OUT 2>&1

echo "checksum:" >> $OUT
cat $CRC_TMP >> $OUT
echo "" >> $OUT

diff $CRC $CRC_TMP >> $OUT 2>&1

if [ $? -eq 0 ]; then
	echo "$test_name: $test_description: ok"
	touch $test_name.ok
else
	ln -f $test_name.log $test_name.failed
	echo "$test_name: $test_description: failed"
fi

rm -f $CRC_TMP >/dev/null 2>&1

else #if test -x $E2IMAGE_EXE; then
	echo "$test_name: $test_description: skipped"
fi