Commit Diff


commit - 7cf187c09f158936b445f73196cfe6482412cd7d
commit + 5d87f6ba8030eec2994aa2f53ed5c462ba4894db
blob - 4b8837985fd6dc886c141139556d5b28090ca8b7
blob + f9142df20d80d4fae04c3f257c958e8674411591
--- src/testsuite/misc-test.e
+++ src/testsuite/misc-test.e
@@ -13,28 +13,149 @@ 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"
 expect {
 	timeout { exit 1 }