File: test.sh

package info (click to toggle)
cksfv 1.3.15-2
  • links: PTS
  • area: main
  • in suites: forky, sid, trixie
  • size: 428 kB
  • sloc: ansic: 953; sh: 341; makefile: 34
file content (202 lines) | stat: -rwxr-xr-x 4,852 bytes parent folder | download | duplicates (2)
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
#!/bin/bash

cksfv=${CKSFV:-../src/cksfv}

ret="0"

$cksfv -f c1.sfv >/dev/null 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 1 unsuccessful. should report correct checksum."
    ret="1"
else
    echo "test case 1 successful"
fi

$cksfv -f c2.sfv >/dev/null 2>/dev/null
if test "$?" = "0" ; then
    echo "test case 2 unsuccessful. should report incorrect checksum."
    ret="1"
else
    echo "test case 2 successful"
fi

$cksfv a b c > tmp.sfv 2> /dev/null
if test "$?" != "0" ; then
    echo "test case 3 unsuccessful. sfv creation failed."
    ret="1"
else
    echo "test case 3 successful"
fi

$cksfv -f tmp.sfv >/dev/null 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 4 unsuccessful. sfv checking failed."
    ret="1"
else
    echo "test case 4 successful"
fi

$cksfv a d >/dev/null 2>/dev/null
if test "$?" = "0" ; then
    echo "test case 5 unsuccessful. sfv creation should have failed."
    ret="1"
else
    echo "test case 5 successful"
fi

$cksfv -i -f c3.sfv >/dev/null 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 6 unsuccessful. in-casesensitive checking failed."
    ret="1"
else
    echo "test case 6 successful"
fi

$cksfv -q -f c1.sfv 2>/dev/null > tmpfile
$cksfv -q -f c2.sfv 2>/dev/null >> tmpfile
$cksfv -q -i -f c3.sfv 2>/dev/null >> tmpfile
rm -f emptyfile
touch emptyfile
if test "`wc -l < tmpfile`" != "`wc -l < emptyfile`" ; then
    echo "test case 7 unsuccessful. tmpfile not empty."
    ret="1"
else
    echo "test case 7 successful"
fi

# Checksum code with illegal characters
$cksfv -f c4.sfv >/dev/null 2>/dev/null
if test "$?" = "0" ; then
    echo "test case 8 unsuccessful."
    ret="1"
else
    echo "test case 8 successful"
fi

# Checksum code with one too few characters
$cksfv -f c5.sfv >/dev/null 2>/dev/null
if test "$?" = "0" ; then
    echo "test case 9 unsuccessful."
    ret="1"
else
    echo "test case 9 successful"
fi

# Checksum code with one too many characters
$cksfv -f c6.sfv >/dev/null 2>/dev/null
if test "$?" = "0" ; then
    echo "test case 10 unsuccessful."
    ret="1"
else
    echo "test case 10 successful"
fi

# Partial checks
$cksfv a b c > tmp.sfv 2> /dev/null
$cksfv -f tmp.sfv a b d > /dev/null 2> /dev/null
if test "$?" = "0" ; then
    echo "test case 11 unsuccessful."
    ret="1"
else
    echo "test case 11 successful"
fi

# Partial checks
$cksfv -f tmp.sfv c > /dev/null 2> /dev/null
if test "$?" != "0" ; then
    echo "test case 12 unsuccessful."
    ret="1"
else
    echo "test case 12 successful"
fi

ln -sfn ../dir4 dir1/link 2> /dev/null
ln -sfn ../dir3 dir2/link 2> /dev/null

# Recursive without symlinks, successful
$cksfv -C dir1 -r > /dev/null 2> /dev/null
if test "$?" != "0" ; then
    echo "test case 13 unsuccessful. should report correct checksum."
    ret="1"
else
    echo "test case 13 successful"
fi

# Recursive without symlinks, unsuccessful
$cksfv -C dir2 -r > /dev/null 2> /dev/null
if test "$?" = 0 ; then
    echo "test case 14 unsuccessful. should report incorrect checksum."
    ret="1"
else
    echo "test case 14 successful"
fi

# Recursive with symlinks, unsuccessful
$cksfv -C dir1 -r -L > /dev/null 2> /dev/null
if test "$?" = "0" ; then
    echo "test case 15 unsuccessful. should report correct checksum."
    ret="1"
else
    echo "test case 15 successful"
fi

# Recursive with symlinks, unsuccessful
$cksfv -C dir2 -r -L > /dev/null 2> /dev/null
if test "$?" = 0 ; then
    echo "test case 16 unsuccessful. should report incorrect checksum."
    ret="1"
else
    echo "test case 16 successful"
fi

# Test backslash transformation
$cksfv -s -f c7.sfv > /dev/null 2> /dev/null
if test "$?" != 0 ; then
    echo "test case 17 unsuccessful. should report incorrect behavior."
    ret="1"
else
    echo "test case 17 successful"
fi

$cksfv -g dir3/c1.sfv >/dev/null 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 18 unsuccessful. should report correct checksum."
    ret="1"
else
    echo "test case 18 successful"
fi

$cksfv -f nullbyte.sfv >/dev/null 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 19 unsuccessful. should report correct checksum."
    ret="1"
else
    echo "test case 19 successful"
fi

$cksfv -f nullbyte2.sfv >/dev/null 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 20 unsuccessful. should report correct checksum."
    ret="1"
else
    echo "test case 20 successful"
fi

$cksfv -R recursive-dir-1 >rec.sfv 2>/dev/null
if test "$?" != "0" ; then
    echo "test case 21 unsuccessful. should report correct checksum."
    ret="1"
else
    $cksfv -f rec.sfv >/dev/null 2>/dev/null
    if test "$?" != "0" ; then
	echo "test case 21 unsuccessful. should report correct checksum."
	ret="1"
    else
	echo "test case 21 successful"
    fi
fi

if test "$ret" != "0" ; then
    echo "One or more of the tests were unsuccessful. Please report."
    exit 1
fi