18
18
# this program; if not, see <http://www.gnu.org/licenses/>.
19
19
20
20
21
- SCRIPTS_DIR=$( cd $( dirname $0 ) && pwd)
21
+ SCRIPTS_DIR=$( cd " $( dirname " $0 " ) " && pwd)
22
22
BASEDIR=$SCRIPTS_DIR /../..
23
23
TESTS_DIR=$SCRIPTS_DIR /..
24
24
TESTENV_DIR=$TESTS_DIR /env
@@ -51,27 +51,27 @@ WEBCLIENT_LOG=$LOG_DIR/webclient.log
51
51
WEBCLIENT_BIN=$SCRIPTS_DIR /webclient.pl
52
52
53
53
provision_initial () {
54
- if test -e $TESTENV_DIR ; then
54
+ if test -e " $TESTENV_DIR " ; then
55
55
TESTENV_DIR_OLD=$TESTENV_DIR .old
56
- if test -e $TESTENV_DIR_OLD ; then
57
- rm -rf $TESTENV_DIR_OLD
56
+ if test -e " $TESTENV_DIR_OLD " ; then
57
+ rm -rf " $TESTENV_DIR_OLD "
58
58
fi
59
- mv $TESTENV_DIR $TESTENV_DIR .old
59
+ mv " $TESTENV_DIR " " $TESTENV_DIR " .old
60
60
fi
61
61
62
- mkdir -p $LOG_DIR
62
+ mkdir -p " $LOG_DIR "
63
63
}
64
64
65
65
provision_tinyproxy () {
66
- mkdir -p $TINYPROXY_DATA_DIR
67
- cp $BASEDIR /data/templates/default.html $TINYPROXY_DATA_DIR
68
- cp $BASEDIR /data/templates/debug.html $TINYPROXY_DATA_DIR
69
- cp $BASEDIR /data/templates/stats.html $TINYPROXY_DATA_DIR
70
- mkdir -p $TINYPROXY_PID_DIR
71
- mkdir -p $TINYPROXY_LOG_DIR
72
- mkdir -p $TINYPROXY_CONF_DIR
73
-
74
- cat >> $TINYPROXY_CONF_FILE << EOF
66
+ mkdir -p " $TINYPROXY_DATA_DIR "
67
+ cp " $BASEDIR " /data/templates/default.html " $TINYPROXY_DATA_DIR "
68
+ cp " $BASEDIR " /data/templates/debug.html " $TINYPROXY_DATA_DIR "
69
+ cp " $BASEDIR " /data/templates/stats.html " $TINYPROXY_DATA_DIR "
70
+ mkdir -p " $TINYPROXY_PID_DIR "
71
+ mkdir -p " $TINYPROXY_LOG_DIR "
72
+ mkdir -p " $TINYPROXY_CONF_DIR "
73
+
74
+ cat >> " $TINYPROXY_CONF_FILE " << EOF
75
75
User $TINYPROXY_USER
76
76
#Group $TINYPROXY_GROUP
77
77
Port $TINYPROXY_PORT
@@ -103,85 +103,87 @@ AddHeader "X-My-Header3" "Powered by Tinyproxy"
103
103
Upstream http 255.255.255.255:65535 ".invalid"
104
104
EOF
105
105
106
- cat << 'EOF ' > $TINYPROXY_FILTER_FILE
106
+ cat << 'EOF ' > " $TINYPROXY_FILTER_FILE"
107
107
.*\.google-analytics\.com$
108
108
EOF
109
109
}
110
110
111
111
start_tinyproxy () {
112
- echo -n " starting tinyproxy..."
113
- $VALGRIND $TINYPROXY_BIN -c $TINYPROXY_CONF_FILE 2> $TINYPROXY_STDERR_LOG
112
+ printf " starting tinyproxy..."
113
+ $VALGRIND " $TINYPROXY_BIN " -c " $TINYPROXY_CONF_FILE " 2> " $TINYPROXY_STDERR_LOG "
114
114
echo " done (listening on $TINYPROXY_IP :$TINYPROXY_PORT )"
115
115
}
116
116
117
117
reload_config () {
118
- echo -n " signaling tinyproxy to reload config..."
119
- pid=$( cat $TINYPROXY_PID_FILE )
118
+ printf " signaling tinyproxy to reload config..."
119
+ pid=$( cat " $TINYPROXY_PID_FILE " )
120
120
# 1: SIGHUP
121
- kill -1 $pid && echo " ok" || echo " fail"
121
+ kill -1 " $pid " && echo " ok" || echo " fail"
122
122
}
123
123
124
124
stop_tinyproxy () {
125
- echo -n " killing tinyproxy..."
126
- pid=$( cat $TINYPROXY_PID_FILE )
127
- kill $pid
128
- if test " x $? " = " x0 " ; then
125
+ printf " killing tinyproxy..."
126
+ pid=$( cat " $TINYPROXY_PID_FILE " )
127
+ kill " $pid "
128
+ if test " $? " = " 0 " ; then
129
129
echo " ok"
130
130
else
131
131
echo " error killing pid $pid "
132
- ps aux | grep tinyproxy
132
+ pgrep tinyproxy
133
133
echo " ### printing logfile"
134
- cat $TINYPROXY_LOG_FILE
134
+ cat " $TINYPROXY_LOG_FILE "
135
135
echo " ### printing stderr logfile"
136
- cat $TINYPROXY_STDERR_LOG
136
+ cat " $TINYPROXY_STDERR_LOG "
137
137
fi
138
138
}
139
139
140
140
provision_webserver () {
141
- mkdir -p $WEBSERVER_PID_DIR
142
- mkdir -p $WEBSERVER_LOG_DIR
141
+ mkdir -p " $WEBSERVER_PID_DIR "
142
+ mkdir -p " $WEBSERVER_LOG_DIR "
143
143
}
144
144
145
145
start_webserver () {
146
- echo -n " starting web server..."
147
- $WEBSERVER_BIN --port $WEBSERVER_PORT --log-dir $WEBSERVER_LOG_DIR --pid-file $WEBSERVER_PID_FILE
148
- echo " done (listening on $WEBSERVER_IP :$WEBSERVER_PORT )"
146
+ printf " starting web server..."
147
+ " $WEBSERVER_BIN " --port " $WEBSERVER_PORT " --log-dir " $WEBSERVER_LOG_DIR " --pid-file " $WEBSERVER_PID_FILE "
148
+ echo " done. listening on $WEBSERVER_IP :$WEBSERVER_PORT "
149
+ " $WEBSERVER_BIN " --port " $WEBSERVER_PORT " --log-dir " $WEBSERVER_LOG_DIR " --pid-file " $WEBSERVER_PID_FILE "
150
+ echo " done. listening on $WEBSERVER_IP :$WEBSERVER_PORT "
149
151
}
150
152
151
153
stop_webserver () {
152
- echo -n " killing webserver..."
153
- kill $( cat $WEBSERVER_PID_FILE )
154
- if test " x $? " = " x0 " ; then
154
+ printf " killing webserver..."
155
+ kill " $( cat " $WEBSERVER_PID_FILE " ) "
156
+ if test " $? " = " 0 " ; then
155
157
echo " ok"
156
158
else
157
159
echo " error"
158
- fi
160
+ fi
159
161
}
160
162
161
163
wait_for_some_seconds () {
162
- SECONDS =$1
163
- if test " x $SECONDS " = " x " ; then
164
- SECONDS =1
164
+ seconds =$1
165
+ if test " $seconds " = " " ; then
166
+ seconds =1
165
167
fi
166
168
167
- echo -n " waiting for $SECONDS seconds."
169
+ printf ' waiting for %s seconds.' " $seconds "
168
170
169
- for COUNT in $( seq 1 $SECONDS ) ; do
171
+ for COUNT in $( seq 1 " $seconds " ) ; do
170
172
sleep 1
171
- echo -n " . "
173
+ printf ' %s ' " $COUNT "
172
174
done
173
- echo " done"
175
+ echo ' done'
174
176
}
175
177
176
178
run_basic_webclient_request () {
177
- $WEBCLIENT_BIN $1 $2 > $WEBCLIENT_LOG 2>&1
179
+ " $WEBCLIENT_BIN " " $1 " " $2 " > " $WEBCLIENT_LOG " 2>&1
178
180
WEBCLIENT_EXIT_CODE=$?
179
- if test " x $WEBCLIENT_EXIT_CODE " = " x0 " ; then
181
+ if test " $WEBCLIENT_EXIT_CODE " = " 0 " ; then
180
182
echo " ok"
181
183
else
182
- echo " ERROR ( $WEBCLIENT_EXIT_CODE ) "
184
+ echo " ERROR: $WEBCLIENT_EXIT_CODE "
183
185
echo " webclient output:"
184
- cat $WEBCLIENT_LOG
186
+ cat " $WEBCLIENT_LOG "
185
187
echo " ######################################"
186
188
fi
187
189
@@ -192,15 +194,15 @@ run_failure_webclient_request() {
192
194
ec=$1
193
195
expected_error=$(( $1 - 399 ))
194
196
shift
195
- $WEBCLIENT_BIN " $1 " " $2 " " $3 " " $4 " > $WEBCLIENT_LOG 2>&1
197
+ " $WEBCLIENT_BIN " " $1 " " $2 " " $3 " " $4 " > " $WEBCLIENT_LOG " 2>&1
196
198
WEBCLIENT_EXIT_CODE=$?
197
- if test " x $WEBCLIENT_EXIT_CODE " = " x $expected_error " ; then
199
+ if test " $WEBCLIENT_EXIT_CODE " = " $expected_error " ; then
198
200
echo " ok, got expected error code $ec "
199
201
return 0
200
202
else
201
- echo " ERROR ( $WEBCLIENT_EXIT_CODE ) "
203
+ echo " ERROR: $WEBCLIENT_EXIT_CODE "
202
204
echo " webclient output:"
203
- cat $WEBCLIENT_LOG
205
+ cat " $WEBCLIENT_LOG "
204
206
echo " ######################################"
205
207
fi
206
208
@@ -221,35 +223,35 @@ wait_for_some_seconds 1
221
223
FAILED=0
222
224
223
225
basic_test () {
224
- echo -n " checking direct connection to web server..."
226
+ printf " checking direct connection to web server..."
225
227
run_basic_webclient_request " $WEBSERVER_IP :$WEBSERVER_PORT " /
226
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
228
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
227
229
228
- echo -n " testing connection through tinyproxy..."
230
+ printf " testing connection through tinyproxy..."
229
231
run_basic_webclient_request " $TINYPROXY_IP :$TINYPROXY_PORT " " http://$WEBSERVER_IP :$WEBSERVER_PORT /"
230
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
232
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
231
233
232
- echo -n " requesting statspage via stathost url..."
234
+ printf " requesting statspage via stathost url..."
233
235
run_basic_webclient_request " $TINYPROXY_IP :$TINYPROXY_PORT " " http://$TINYPROXY_STATHOST_IP "
234
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
236
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
235
237
}
236
238
237
239
ext_test () {
238
- echo -n " checking bogus request..."
240
+ printf " checking bogus request..."
239
241
run_failure_webclient_request 400 --method=" BIG FART" " $TINYPROXY_IP :$TINYPROXY_PORT " " http://$WEBSERVER_IP :$WEBSERVER_PORT "
240
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
242
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
241
243
242
- echo -n " testing connection to filtered domain..."
244
+ printf " testing connection to filtered domain..."
243
245
run_failure_webclient_request 403 " $TINYPROXY_IP :$TINYPROXY_PORT " " http://badgoy.google-analytics.com/"
244
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
246
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
245
247
246
- echo -n " requesting connect method to denied port..."
248
+ printf " requesting connect method to denied port..."
247
249
run_failure_webclient_request 403 --method=CONNECT " $TINYPROXY_IP :$TINYPROXY_PORT " " localhost:12345"
248
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
250
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
249
251
250
- echo -n " testing unavailable backend..."
252
+ printf " testing unavailable backend..."
251
253
run_failure_webclient_request 502 " $TINYPROXY_IP :$TINYPROXY_PORT " " http://bogus.invalid"
252
- test " x $? " = " x0 " || FAILED=$(( FAILED + 1 ))
254
+ test " $? " = " 0 " || FAILED=$(( FAILED + 1 ))
253
255
}
254
256
255
257
basic_test
@@ -259,10 +261,11 @@ ext_test
259
261
260
262
echo " $FAILED errors"
261
263
262
- if test " x $TINYPROXY_TESTS_WAIT " = " xyes " ; then
264
+ if test " $TINYPROXY_TESTS_WAIT " = " yes " ; then
263
265
echo " You can continue using the webserver and tinyproxy."
264
- echo -n " hit <enter> to stop the servers and exit: "
265
- read READ
266
+ rintf " hit <enter> to stop the servers and exit: "
267
+ read -r READ
268
+ echo " $READ " > /dev/null
266
269
fi
267
270
268
271
stop_tinyproxy
0 commit comments