about summary refs log tree commit diff
path: root/src/testsuite/kick-test.e
diff options
context:
space:
mode:
authorBryan Caldwell <bcaldwel@ucsd.edu>2008-05-05 16:04:48 +0200
committerFlorian Westphal <fw@strlen.de>2008-05-05 16:12:41 +0200
commit3d8eda9c860cbcbf195fe2242c67dd57fe966b3e (patch)
treecd58617f7ed181cf719e866f7a51a3d66befcf75 /src/testsuite/kick-test.e
parent3283d275ba26c470d131ce0b6f66ee54a00bfd1c (diff)
downloadngircd-3d8eda9c860cbcbf195fe2242c67dd57fe966b3e.tar.gz
ngircd-3d8eda9c860cbcbf195fe2242c67dd57fe966b3e.zip
Allow KICK to handle comma-delimited lists (of channels, nicks).
includes test cases.

[fw@strlen.de:
	- move code around to avoid duplication
	- use const where possible
	- integrate test case]
Diffstat (limited to 'src/testsuite/kick-test.e')
-rw-r--r--src/testsuite/kick-test.e112
1 files changed, 112 insertions, 0 deletions
diff --git a/src/testsuite/kick-test.e b/src/testsuite/kick-test.e
new file mode 100644
index 00000000..9412d321
--- /dev/null
+++ b/src/testsuite/kick-test.e
@@ -0,0 +1,112 @@
+spawn telnet localhost 6789
+expect {
+       timeout { exit 1 }
+       "Connected"
+}
+
+send "nick nick\r"
+send "user user . . :User\r"
+expect {
+       timeout { exit 1 }
+       "376"
+}
+
+send "kick #Channel nick\r"
+expect {
+       timeout { exit 1 }
+       "403"
+}
+
+send "join #Channel\r"
+
+send "kick #Channel nick\r"
+expect {
+       timeout { exit 1 }
+       "@* KICK #Channel nick :nick"
+}
+
+send "join #Channel\r"
+
+send "kick #Channel nick :reason\r"
+expect {
+       timeout { exit 1 }
+       "@* KICK #Channel nick :reason"
+}
+
+send "join #Channel,#Channel2\r"
+
+send "kick #Channel,#Channel2 nick\r"
+expect {
+       timeout { exit 1 }
+       "461"
+}
+
+send "kick #Channel,#Channel2,#NoExists,#NoExists nick1,nick,nick3,nick :reason\r"
+expect {
+       timeout { exit 1 }
+       "401"
+}
+expect {
+       timeout { exit 1 }
+       "@* KICK #Channel2 nick :reason"
+}
+expect {
+       timeout { exit 1 }
+       "401"
+}
+expect {
+       timeout { exit 1 }
+       "403"
+}
+
+send "kick #Channel nick2,nick,nick3\r"
+expect {
+       timeout { exit 1 }
+       "401"
+}
+expect {
+       timeout { exit 1 }
+       "@* KICK #Channel nick :nick"
+}
+expect {
+       timeout { exit 1 }
+       "401"
+}
+
+send "kick #Channel ,,\r"
+expect {
+       timeout { exit 1 }
+       "401"
+}
+expect {
+       timeout { exit 1 }
+       "401"
+}
+
+send "kick ,, ,,,\r"
+expect {
+       timeout { exit 1 }
+       "461"
+}
+
+send "kick ,, ,,\r"
+expect {
+       timeout { exit 1 }
+       "401"
+}
+expect {
+       timeout { exit 1 }
+       "401"
+}
+expect {
+       timeout { exit 1 }
+       "401"
+}
+
+send "quit\r"
+expect {
+       timeout { exit 1 }
+       "Connection closed"
+}
+
+# -eof-