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