1
0
mirror of https://github.com/osmarks/ngircd.git synced 2024-12-13 02:10:27 +00:00
ngircd/src/testsuite
2022-12-25 15:16:31 +01:00
..
ssl updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
channel-test.e Don't send nick name as default PART reason 2015-03-14 11:13:50 +01:00
check-idle.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
cleanup-server3 updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
connect-ssl-cert1-test.e SSL test server: Use port 6790, like "test server #2" 2020-05-07 00:02:00 +02:00
connect-ssl-cert2-test.e SSL test server: Use port 6790, like "test server #2" 2020-05-07 00:02:00 +02:00
connect-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
functions.inc Fixed echo without newline for systems not understanding "echo -n"; added 2004-09-06 22:04:06 +00:00
getpid.sh Make test suite compatible with Haiku 2019-11-03 15:15:59 +01:00
invite-test.e Don't send nick name as default PART reason 2015-03-14 11:13:50 +01:00
join-test.e Test suite: Test multiple "Modes" lines in [Channel] sections 2020-03-29 01:16:37 +01:00
kick-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
Makefile.ng testsuite: Add missing files to EXTRA_DIST 2020-05-22 17:23:42 +02:00
message-test.e Send_Message: Fix handling of "empty" targets 2016-01-07 01:54:11 +01:00
misc-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
mode-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
ngircd-test1.conf Test suite: Test multiple "Modes" lines in [Channel] sections 2020-03-29 01:16:37 +01:00
ngircd-test2.conf Implement new configuration option "MaxPenaltyTime" (#251) 2018-11-28 14:13:09 +01:00
ngircd-test3.conf SSL test server: Use port 6790, like "test server #2" 2020-05-07 00:02:00 +02:00
opless-channel-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
prep-server3 updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
README Spelling fixes, mostly in file comments 2022-12-25 15:16:31 +01:00
reload-server3 updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
reload-server.sh Test suite: Wait 2 seconds after reloading the daemon 2020-11-01 17:25:39 +01:00
server-link-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
server-login-test.e Predefined channles: Fix handling of legacy configuration options 2020-03-29 00:45:59 +01:00
start-server1 Test suite: start two servers and test server-server links 2008-11-13 22:46:06 +01:00
start-server2 Test suite: start two servers and test server-server links 2008-11-13 22:46:06 +01:00
start-server3 updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
start-server.sh Test suite: explicitely enable glibc memory checking 2014-01-10 19:56:14 +01:00
stop-server1 Test suite: start two servers and test server-server links 2008-11-13 22:46:06 +01:00
stop-server2 Test suite: start two servers and test server-server links 2008-11-13 22:46:06 +01:00
stop-server3 updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
stop-server.sh Test suite: remove indentation of messages 2012-10-06 23:17:06 +02:00
stress-A.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00
stress-B.e Test suite: Update file headers and comments 2014-04-17 23:56:36 +02:00
stress-server.sh Test suite: remove indentation of messages 2012-10-06 23:17:06 +02:00
switch-server3 updating testsuite to support ssl-tests 2020-04-25 00:04:38 +02:00
test-loop.sh Enhanced messages and exit codes. 2004-09-04 19:14:46 +00:00
tests.sh Test suite/platformtest.sh: Detect when tests have been skipped 2014-06-04 12:15:23 +02:00
wait-tests.sh Detect source directory correctly. 2005-08-12 21:34:19 +00:00
who-test.e Don't send nick name as default PART reason 2015-03-14 11:13:50 +01:00
whois-test.e Test suite: Don't use DNS lookups 2014-06-09 02:15:52 +02:00

                     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 <name>

	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 [<id>]

	start-server.sh starts up the test binary, "T-ngircd<id>" (the default
	for <id> is 1) with configuration file "ngircd-test<id>.conf" and the
	console output redirected to "ngircd-test<id>.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 [<id>]

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

stress-server.sh [<clientCount> [<maxConcurrent>]]

	stress-server.sh starts <clientCount> clients that "stress" the
	running test server (id 1); but no more than <maxConcurrent> 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 <name>.e and checks
	its exit code.

test-loop.sh [<loops> [<wait>]]

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

wait-tests.sh [<max>]

	stress-server.sh uses this script to ensure that no more than <max>
	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