From: Dana Dahlstrom Date: Sat, 3 May 2008 22:46:02 +0000 (+0200) Subject: tests for JOIN and various replies X-Git-Tag: rel-13-rc1~124 X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=commitdiff_plain;h=c63d8fd051b9d1e9c8dfa64424b9f557968c4513 tests for JOIN and various replies Brandon Beresini sent me a patch yesterday adding tests for JOIN under various circumstances, which I believe he worked on with Bryan Caldwell and Ali Shemiran. I made a few modifications; the result is below. --- diff --git a/src/testsuite/Makefile.am b/src/testsuite/Makefile.am index af1d980b..87e47d45 100644 --- a/src/testsuite/Makefile.am +++ b/src/testsuite/Makefile.am @@ -21,7 +21,7 @@ EXTRA_DIST = \ start-server.sh stop-server.sh tests.sh stress-server.sh \ test-loop.sh wait-tests.sh \ channel-test.e connect-test.e check-idle.e misc-test.e mode-test.e \ - kick-test.e \ + join-test.e kick-test.e \ opless-channel-test.e \ who-test.e stress-A.e stress-B.e \ ngircd-test.conf @@ -49,6 +49,10 @@ channel-test: tests.sh rm -f channel-test ln -s $(srcdir)/tests.sh channel-test +join-test: tests.sh + rm -f join-test + ln -s $(srcdir)/tests.sh join-test + kick-test: tests.sh rm -f kick-test ln -s $(srcdir)/tests.sh kick-test @@ -72,11 +76,12 @@ mode-test: tests.sh TESTS = start-server.sh \ connect-test \ channel-test \ + join-test \ kick-test \ misc-test \ mode-test \ - who-test \ opless-channel-test \ + who-test \ stress-server.sh \ stop-server.sh diff --git a/src/testsuite/join-test.e b/src/testsuite/join-test.e new file mode 100644 index 00000000..41a5168a --- /dev/null +++ b/src/testsuite/join-test.e @@ -0,0 +1,68 @@ +spawn telnet localhost 6789 +expect { + timeout { exit 1 } + "Connected" +} + +send "nick nick\r" +send "user user . . :User\r" +expect { + timeout { exit 1 } + "376" +} + +send "JOIN\r" +expect { + timeout { exit 1} + "461" +} + +send "JOIN #InviteChannel\r" +expect { + timeout { exit 1 } + "473" +} + +send "JOIN #FullKeyed\r" +expect { + timeout { exit 1 } + "475" +} + +send "JOIN #FullKeyed WrongKey\r" +expect { + timeout { exit 1 } + "475" +} + +send "JOIN #FullKeyed Secret\r" +expect { + timeout { exit 1 } + "471" +} + +send "JOIN #TopicChannel\r" +expect { + timeout { exit 1 } + "@* JOIN :#TopicChannel" +} +expect { + timeout { exit 1 } + "332" +} + +send "JOIN 0\r" +send "JOIN #1,#2,#3,#4\r" +send "JOIN #5\r" +expect { + timeout { exit 1 } + "405" +} + +send "quit\r" +expect { + timeout { exit 1 } + "Connection closed" +} + +# -eof- diff --git a/src/testsuite/ngircd-test.conf b/src/testsuite/ngircd-test.conf index 0bec96d3..eeace761 100644 --- a/src/testsuite/ngircd-test.conf +++ b/src/testsuite/ngircd-test.conf @@ -8,9 +8,25 @@ AdminEMail = admin@irc.server MaxConnectionsIP = 0 OperCanUseMode = yes + MaxJoins = 4 [Operator] Name = TestOp Password = 123 +[CHANNEL] + Name = #InviteChannel + Modes = i + +[CHANNEL] + Name = #FullKeyed + Modes = lk + MaxUsers = 0 + Key = Secret + +[CHANNEL] + Name = #TopicChannel + Modes = t + Topic = the topic + # -eof-