]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/blob - tests/sys/geom/class/gate/2_test.sh
MFC r293821:
[FreeBSD/stable/10.git] / tests / sys / geom / class / gate / 2_test.sh
1 #!/bin/sh
2 # $FreeBSD$
3
4 . `dirname $0`/conf.sh
5
6 base=`basename $0`
7 us=46
8 work=`mktemp -u $base.XXXXXX` || exit 1
9 src=`mktemp -u $base.XXXXXX` || exit 1
10
11 test_cleanup()
12 {
13         ggatel destroy -f -u $us
14         rm -f $work $src
15
16         geom_test_cleanup
17 }
18 trap test_cleanup ABRT EXIT INT TERM
19
20 dd if=/dev/random of=$work bs=1m count=1 conv=sync
21 dd if=/dev/random of=$src bs=1m count=1 conv=sync
22
23 if ! ggatel create -u $us $work; then
24         echo 'ggatel create failed'
25         echo 'Bail out!'
26         exit 1
27 fi
28
29 dd if=${src} of=/dev/ggate${us} bs=1m count=1
30 sleep 1
31
32 echo '1..2'
33
34 src_checksum=$(md5 -q $src)
35 work_checksum=$(md5 -q $work)
36 if [ "$work_checksum" != "$src_checksum" ]; then
37         echo "not ok 1 - md5 checksums didn't match ($work_checksum != $src_checksum) # TODO: bug 204616"
38         echo 'not ok 2 # SKIP'
39 else
40         echo 'ok 1 - md5 checksum'
41
42         ggate_checksum=$(md5 -q /dev/ggate${us})
43         if [ "$ggate_checksum" != "$src_checksum" ]; then
44                 echo "not ok 2 - md5 checksums didn't match ($ggate_checksum != $src_checksum)"
45         else
46                 echo 'ok 2 - md5 checksum'
47         fi
48 fi