about summary refs log tree commit diff
diff options
context:
space:
mode:
authorBrandon Beresini <beresini@google.com>2008-05-14 23:39:05 -0700
committerFlorian Westphal <fw@strlen.de>2008-05-15 11:13:45 +0200
commit5d87f6ba8030eec2994aa2f53ed5c462ba4894db (patch)
treed8bc17ace7ddad99ce7f2fb28278cc4d55711dba
parent7cf187c09f158936b445f73196cfe6482412cd7d (diff)
downloadngircd-5d87f6ba8030eec2994aa2f53ed5c462ba4894db.tar.gz
ngircd-5d87f6ba8030eec2994aa2f53ed5c462ba4894db.zip
Add tests for MOTD, VERSION, TIME, USERHOST
The misc-test.e file is also somewhat reorganized and commented here.

Patch from Brandon Beresini, Bryan Caldwell and Dana Dahlstrom.
-rw-r--r--src/testsuite/misc-test.e127
1 files changed, 124 insertions, 3 deletions
diff --git a/src/testsuite/misc-test.e b/src/testsuite/misc-test.e
index 4b883798..f9142df2 100644
--- a/src/testsuite/misc-test.e
+++ b/src/testsuite/misc-test.e
@@ -13,26 +13,147 @@ expect {
 	"376"
 }
 
+# RFC 2812 Section 3.4.1
+
+send "motd\r"
+expect {
+	timeout { exit 1 }
+	"375"
+}
+expect {
+	timeout { exit 1 }
+	"372"
+}
+expect {
+	timeout { exit 1 }
+	"376"
+}
+
+send "motd ngircd.test.server\r"
+expect {
+	timeout { exit 1 }
+	"375"
+}
+expect {
+	timeout { exit 1 }
+	"372"
+}
+expect {
+	timeout { exit 1 }
+	"376"
+}
+
+send "motd doesnotexist\r"
+expect {
+	timeout { exit 1 }
+	"402"
+# note this is not specified in RFC 2812, but probably should be
+}
+
+# RFC 2812 Section 3.4.3
+
+send "version\r"
+expect {
+	timeout { exit 1 }
+	"351"
+}
+
+send "version ngircd.test.server\r"
+expect {
+	timeout { exit 1 }
+	"351"
+}
+
+send "version doesnotexist\r"
+expect {
+	timeout { exit 1 }
+	"402"
+}
+
+# RFC 2812 Section 3.4.6
+
+send "time\r"
+expect {
+	timeout { exit 1 }
+	"391"
+}
+
+send "time ngircd.test.server\r"
+expect {
+	timeout { exit 1 }
+	"391"
+}
+
+send "time doesnotexist\r"
+expect {
+	timeout { exit 1 }
+	"402"
+}
+
+# RFC 2812 Section 3.4.10
+
+send "info\r"
+expect {
+	timeout { exit 1 }
+	"371"
+}
+expect {
+	timeout { exit 1 }
+	"374"
+}
+
+# RFC 2812 Section 4.5
+
 send "summon\r"
 expect {
 	timeout { exit 1 }
 	"445"
 }
 
+# RFC 2812 Section 4.6
+
 send "users\r"
 expect {
 	timeout { exit 1 }
 	"446"
 }
 
-send "info\r"
+# RFC 2812 Section 4.8
+
+send "userhost\r"
 expect {
 	timeout { exit 1 }
-	"371"
+	"461"
 }
+
+send "userhost nick\r"
 expect {
 	timeout { exit 1 }
-	"374"
+	-re ":ngircd.test.server 302 nick :?nick=+.*@(localhost|127.0.0.1)"
+}
+
+send "userhost doesnotexist\r"
+expect {
+	timeout { exit 1 }
+	":ngircd.test.server 302 nick :\r"
+}
+
+send "userhost nick doesnotexist nick doesnotexist\r"
+expect {
+	timeout { exit 1 }
+	-re ":ngircd.test.server 302 nick :nick=+.*@(localhost|127.0.0.1) nick=+.*@(localhost|127.0.0.1)"
+}
+
+send "away :testing\r"
+expect {
+	timeout { exit 1 }
+	"306 nick"
+}
+
+send "userhost nick nick nick nick nick nick\r"
+expect {
+	timeout { exit 1 }
+	-re ":ngircd.test.server 302 nick :nick=-.*@(localhost|127.0.0.1) nick=-.*@(localhost|127.0.0.1) nick=-.*@(localhost|127.0.0.1) nick=-.*@(localhost|127.0.0.1) nick=-.*@(localhost|127.0.0.1)\r"
 }
 
 send "quit\r"