summaryrefslogtreecommitdiff
path: root/xS/main_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'xS/main_test.go')
-rw-r--r--xS/main_test.go29
1 files changed, 29 insertions, 0 deletions
diff --git a/xS/main_test.go b/xS/main_test.go
index 90a55f6..4d6ccb3 100644
--- a/xS/main_test.go
+++ b/xS/main_test.go
@@ -137,3 +137,32 @@ func TestDetectTLS(t *testing.T) {
}
})
}
+
+func TestIRC(t *testing.T) {
+ msg := ircParseMessage(
+ `@first=a\:\s\r\n\\;2nd :srv hi there :good m8 :how are you?`)
+
+ if !reflect.DeepEqual(msg.tags, map[string]string{
+ "first": "a; \r\n\\",
+ "2nd": "",
+ }) {
+ t.Error("tags parsed incorrectly")
+ }
+
+ if msg.nick != "srv" || msg.user != "" || msg.host != "" {
+ t.Error("server name parsed incorrectly")
+ }
+ if msg.command != "hi" {
+ t.Error("command name parsed incorrectly")
+ }
+ if !reflect.DeepEqual(msg.params,
+ []string{"there", "good m8 :how are you?"}) {
+ t.Error("params parsed incorrectly")
+ }
+
+ if !ircEqual("[fag]^", "{FAG}~") {
+ t.Error("string case comparison not according to RFC 2812")
+ }
+
+ // TODO: More tests.
+}