File: setup-chroot-test

package info (click to toggle)
globus-gridftp-server 13.28-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,576 kB
  • sloc: ansic: 41,626; sh: 4,926; makefile: 225; perl: 78
file content (85 lines) | stat: -rwxr-xr-x 1,671 bytes parent folder | download | duplicates (6)
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#! /bin/sh

failed=0
test_tmp=""

tests="test_setup_args_missing_r require_root 1 \
       test_setup_args_h false 0                \
       test_setup_args_c_bad require_root 1     \
       test_setup_args_c_good require_root 0"

set -- $tests

echo "1..$(( $# / 3 ))"

require_root()
{
    [ $(id -u) -ne 0 ]
}

cleanup_tmp()
{
    if [ -n "$test_tmp" ]; then
        rm -rf "$test_tmp"
    fi
    return $failed
}

trap cleanup_tmp 0

test_tmp="$(mktemp -d -t "$(basename $0)XXXXXXXXXX")"
if [ ! -d "$test_tmp" ]; then
    echo "Bail out! Can't create temp file"
    exit 99
fi

test_setup_args_missing_r()
{
    globus-gridftp-server-setup-chroot
}

test_setup_args_h()
{
    globus-gridftp-server-setup-chroot -h
}

test_setup_args_c_bad()
{
    globus-gridftp-server-setup-chroot -c ${X509_CERT_DIR}.bad -r $test_tmp/test_setup_args_c_bad
}

test_setup_args_c_good()
{
    globus-gridftp-server-setup-chroot -c ${X509_CERT_DIR} -r $test_tmp/test_setup_args_c_good
}

i=0
while test "$#" -gt 0; do
    i=$(($i + 1))
    test_name="$1"
    shift
    test_skip="$1"
    shift
    test_expect="$1"
    shift

    if $test_skip; then
        res="$test_expect"
        skip_reason=" #SKIP $test_skip"
    else
        testout="${test_tmp}/${test_name}.out" 
        testerr="${test_tmp}/${test_name}.err" 
        $test_name > "$testout" 2> "${testerr}"
        res=$?
        sed -e 's/^/#    /' < ${testout}
        sed -e 's/^/#    /' < ${testerr}
        skip_reason=""
    fi
    if [ $res -eq $test_expect ]; then
        echo "ok $i - $test_name$skip_reason"
    else
        echo "not ok $i - $test_name"
        failed=$(($failed + 1))
    fi
done
exit $failed