mirror of
https://github.com/libevent/libevent.git
synced 2025-01-09 00:56:20 +08:00
faf2a04fa5
This behavior makes "make verify" actually fail when the tests fail, which is what it's supposed to do.
78 lines
1.3 KiB
Bash
Executable File
78 lines
1.3 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
FAILED=no
|
|
|
|
if test "x$TEST_OUTPUT_FILE" = "x"
|
|
then
|
|
TEST_OUTPUT_FILE=/dev/null
|
|
fi
|
|
|
|
# /bin/echo is a little more likely to support -n than sh's builtin echo.
|
|
if test -x /bin/echo
|
|
then
|
|
ECHO=/bin/echo
|
|
else
|
|
ECHO=echo
|
|
fi
|
|
|
|
if test "$TEST_OUTPUT_FILE" != "/dev/null"
|
|
then
|
|
touch "$TEST_OUTPUT_FILE" || exit 1
|
|
fi
|
|
|
|
TEST_DIR=.
|
|
|
|
T=`echo "$0" | sed -e 's/test-ratelim.sh$//'`
|
|
if test -x "$T/test-ratelim"
|
|
then
|
|
TEST_DIR="$T"
|
|
fi
|
|
|
|
announce () {
|
|
echo $@
|
|
echo $@ >>"$TEST_OUTPUT_FILE"
|
|
}
|
|
|
|
announce_n () {
|
|
$ECHO -n $@
|
|
echo $@ >>"$TEST_OUTPUT_FILE"
|
|
}
|
|
|
|
|
|
run_tests () {
|
|
announce_n " Group limits, no connection limit:"
|
|
if $TEST_DIR/test-ratelim -g 30000 -n 30 -t 100 --check-grouplimit 1000 --check-stddev 100 >>"$TEST_OUTPUT_FILE"
|
|
then
|
|
announce OKAY
|
|
else
|
|
announce FAILED
|
|
FAILED=yes
|
|
fi
|
|
|
|
announce_n " Connection limit, no group limit:"
|
|
if $TEST_DIR/test-ratelim -c 1000 -n 30 -t 100 --check-connlimit 50 --check-stddev 50 >>"$TEST_OUTPUT_FILE"
|
|
then
|
|
announce OKAY ;
|
|
else
|
|
announce FAILED ;
|
|
FAILED=yes
|
|
fi
|
|
|
|
announce_n " Connection limit and group limit:"
|
|
if $TEST_DIR/test-ratelim -c 1000 -g 30000 -n 30 -t 100 --check-grouplimit 1000 --check-connlimit 50 --check-stddev 50 >>"$TEST_OUTPUT_FILE"
|
|
then
|
|
announce OKAY ;
|
|
else
|
|
announce FAILED ;
|
|
FAILED=yes
|
|
fi
|
|
}
|
|
|
|
announce "Running rate-limiting tests:"
|
|
|
|
run_tests
|
|
|
|
if test "$FAILED" = "yes"; then
|
|
exit 1
|
|
fi
|