1
0
Alexander Barton c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
..
ssl 12d5ad5f27 Import upstream version 26 vor 6 Jahren
Makefile.am 2ed1c3d511 Import upstream version 26.1 vor 5 Jahren
Makefile.in 2ed1c3d511 Import upstream version 26.1 vor 5 Jahren
Makefile.ng 12d5ad5f27 Import upstream version 26 vor 6 Jahren
README c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
channel-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
check-idle.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
cleanup-server3 12d5ad5f27 Import upstream version 26 vor 6 Jahren
connect-ssl-cert1-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
connect-ssl-cert2-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
connect-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
functions.inc 4736aa9617 Import upstream version 0.9.2 vor 20 Jahren
getpid.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
invite-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
join-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
kick-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
message-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
misc-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
mode-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
ngircd-test1.conf 12d5ad5f27 Import upstream version 26 vor 6 Jahren
ngircd-test2.conf 3fafaf1490 Import upstream version 25 vor 7 Jahren
ngircd-test3.conf 12d5ad5f27 Import upstream version 26 vor 6 Jahren
opless-channel-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
prep-server3 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
reload-server.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
reload-server3 12d5ad5f27 Import upstream version 26 vor 6 Jahren
server-link-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
server-login-test.e 12d5ad5f27 Import upstream version 26 vor 6 Jahren
start-server.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
start-server1 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
start-server2 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
start-server3 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
stop-server.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
stop-server1 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
stop-server2 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
stop-server3 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
stress-A.e 813f3b0206 Import upstream version 22.1 vor 11 Jahren
stress-B.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
stress-server.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
switch-server3 c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
test-loop.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
tests.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
wait-tests.sh c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
who-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren
whois-test.e c7236ac28f Import upstream version 27~rc1 vor 2 Jahren

README


ngIRCd - Next Generation IRC Server

(c)2001-2008 Alexander Barton,
alex@barton.de, http://www.barton.de/

ngIRCd is free software and published under the
terms of the GNU General Public License.

-- README for the Test Suite --


I. Overview
~~~~~~~~~~~

The purpose of the "test suite" contained in this directory is to detect
bugs and incompatibilities in ngIRCd introduced during coding and after
building ngIRCd on a specific platform.

To run the "standard" tests call "make check" (which runs "make check" in
all the source directories, testing the "portab" library as well for example)
or "make testsuite" (which only runs the tests in this directory). Both will
build ngIRCd (if required) and run some tests on it. These tests should be
portable and run on all supported platforms without errors.

NOTE #1: most tests of this suite depend on the external tools expect(1)
and telnet(1), so make sure you have them installed. If not, the tests will
not fail but simply be skipped.

NOTE #2: the two test servers started by this test suite are configured to
run on port 6789 and 6790; so it will fail if one or both of these ports
are already used by some other daemons!


II. Shell Scripts
~~~~~~~~~~~~~~~~

getpid.sh

This script is used to detect the PID of the running process with
the given name in a portable manner. The result is echoed on the
console. It is a helper script for some other scripts of this suite.

start-server.sh []

start-server.sh starts up the test binary, "T-ngircd" (the default
for is 1) with configuration file "ngircd-test.conf" and the
console output redirected to "ngircd-test.log".
The script first makes sure that getpid.sh is available and working,
and that no other instance of the test binary is already running.
The exit code is 0 if the test binary could be started.

stop-server.sh []

This script uses getpid.sh to detect a running test binary
"T-ngircd" and then shuts it down using the TERM signal.
The exit code is 0 if the test binary could be stopped.

stress-server.sh [ []]

stress-server.sh starts clients that "stress" the
running test server (id 1); but no more than clients
are started at the same moment.

tests.sh

Most of the tests scripts are symlinked to tests.sh, which in turn
uses expect(1) to run the respective script .e and checks
its exit code.

test-loop.sh [ []]

This script runs all the tests times (default: 5) and pauses
seconds (default: 5) between runs.
It isn't used by "make check" or "make testsuite".

wait-tests.sh []

stress-server.sh uses this script to ensure that no more than
clients are connected to the test server (id 1).


III. Scripts for expect(1)
~~~~~~~~~~~~~~~~~~~~~~~~~~

channel-test.e
check-idle.e
connect-test.e
invite-test.e
join-test.e
kick-test.e
message-test.e
misc-test.e
mode-test.e
opless-channel-test.e
server-link-test.e
stress-A.e
stress-B.e
who-test.e
whois-test.e