]> gitweb.factorcode.org Git - factor.git/blob - extra/irc/messages/messages-tests.factor
irc.messages: Fix test
[factor.git] / extra / irc / messages / messages-tests.factor
1 ! Copyright (C) 2009 Bruno Deferrari
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: kernel tools.test accessors arrays
4        irc.messages.parser irc.messages ;
5 EXCLUDE: sequences => join ;
6 IN: irc.messages.tests
7
8
9 ! { "someuser" } [ "someuser!n=user@some.where" parse-name ] unit-test
10
11 { T{ privmsg
12      { line ":someuser!n=user@some.where PRIVMSG #factortest :hi" }
13      { prefix  "someuser!n=user@some.where" }
14      { command "PRIVMSG" }
15      { parameters { "#factortest" } }
16      { trailing "hi" }
17      { target "#factortest" }
18      { text "hi" }
19      { sender "someuser" } } }
20 [ ":someuser!n=user@some.where PRIVMSG #factortest :hi"
21   string>irc-message f >>timestamp ] unit-test
22
23 { T{ join
24      { line ":someuser!n=user@some.where JOIN :#factortest" }
25      { prefix "someuser!n=user@some.where" }
26      { command "JOIN" }
27      { parameters { } }
28      { trailing "#factortest" }
29      { sender "someuser" }
30      { channel "#factortest" } } }
31 [ ":someuser!n=user@some.where JOIN :#factortest"
32   string>irc-message f >>timestamp ] unit-test
33
34 { T{ mode
35      { line ":ircserver.net MODE #factortest +ns" }
36      { prefix "ircserver.net" }
37      { command "MODE" }
38      { parameters { "#factortest" "+ns" } }
39      { name "#factortest" }
40      { mode "+ns" } } }
41 [ ":ircserver.net MODE #factortest +ns"
42   string>irc-message f >>timestamp ] unit-test
43
44 { T{ mode
45      { line ":ircserver.net MODE #factortest +o someuser" }
46      { prefix "ircserver.net" }
47      { command "MODE" }
48      { parameters { "#factortest" "+o" "someuser" } }
49      { name "#factortest" }
50      { mode "+o" }
51      { parameter "someuser" } } }
52 [ ":ircserver.net MODE #factortest +o someuser"
53   string>irc-message f >>timestamp ] unit-test
54
55 { T{ nick
56      { line ":someuser!n=user@some.where NICK :someuser2" }
57      { prefix "someuser!n=user@some.where" }
58      { command "NICK" }
59      { parameters  { } }
60      { trailing "someuser2" }
61      { sender "someuser" }
62      { nickname "someuser2" } } }
63 [ ":someuser!n=user@some.where NICK :someuser2"
64   string>irc-message f >>timestamp ] unit-test
65
66 { T{ rpl-nickname-in-use
67      { line ":ircserver.net 433 * nickname :Nickname is already in use" }
68      { prefix "ircserver.net" }
69      { command "433" }
70      { parameters { "*" "nickname" } }
71      { name "nickname" }
72      { trailing "Nickname is already in use" } } }
73 [ ":ircserver.net 433 * nickname :Nickname is already in use"
74   string>irc-message f >>timestamp ] unit-test