75 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Factor
		
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Factor
		
	
	
| USING: kernel tools.test accessors arrays qualified
 | |
|        irc.messages irc.messages.private ;
 | |
| EXCLUDE: sequences => join ;
 | |
| IN: irc.messages.tests
 | |
| 
 | |
| 
 | |
| { "someuser" } [ "someuser!n=user@some.where" parse-name ] unit-test
 | |
| 
 | |
| { T{ irc-message
 | |
|      { line ":someuser!n=user@some.where PRIVMSG #factortest :hi" }
 | |
|      { prefix "someuser!n=user@some.where" }
 | |
|      { command  "PRIVMSG" }
 | |
|      { parameters { "#factortest" } }
 | |
|      { trailing "hi" } } }
 | |
| [ ":someuser!n=user@some.where PRIVMSG #factortest :hi"
 | |
|   string>irc-message f >>timestamp ] unit-test
 | |
| 
 | |
| { T{ privmsg
 | |
|      { line ":someuser!n=user@some.where PRIVMSG #factortest :hi" }
 | |
|      { prefix  "someuser!n=user@some.where" }
 | |
|      { command "PRIVMSG" }
 | |
|      { parameters { "#factortest" } }
 | |
|      { trailing "hi" }
 | |
|      { name "#factortest" } } }
 | |
| [ ":someuser!n=user@some.where PRIVMSG #factortest :hi"
 | |
|   parse-irc-line f >>timestamp ] unit-test
 | |
| 
 | |
| { T{ join
 | |
|      { line ":someuser!n=user@some.where JOIN :#factortest" }
 | |
|      { prefix "someuser!n=user@some.where" }
 | |
|      { command "JOIN" }
 | |
|      { parameters { } }
 | |
|      { trailing "#factortest" } } }
 | |
| [ ":someuser!n=user@some.where JOIN :#factortest"
 | |
|   parse-irc-line f >>timestamp ] unit-test
 | |
| 
 | |
| { T{ mode
 | |
|      { line ":ircserver.net MODE #factortest +ns" }
 | |
|      { prefix "ircserver.net" }
 | |
|      { command "MODE" }
 | |
|      { parameters { "#factortest" "+ns" } }
 | |
|      { name "#factortest" }
 | |
|      { mode "+ns" } } }
 | |
| [ ":ircserver.net MODE #factortest +ns"
 | |
|   parse-irc-line f >>timestamp ] unit-test
 | |
| 
 | |
| { T{ mode
 | |
|      { line ":ircserver.net MODE #factortest +o someuser" }
 | |
|      { prefix "ircserver.net" }
 | |
|      { command "MODE" }
 | |
|      { parameters { "#factortest" "+o" "someuser" } }
 | |
|      { name "#factortest" }
 | |
|      { mode "+o" }
 | |
|      { parameter "someuser" } } }
 | |
| [ ":ircserver.net MODE #factortest +o someuser"
 | |
|   parse-irc-line f >>timestamp ] unit-test
 | |
| 
 | |
| { T{ nick
 | |
|      { line ":someuser!n=user@some.where NICK :someuser2" }
 | |
|      { prefix "someuser!n=user@some.where" }
 | |
|      { command "NICK" }
 | |
|      { parameters  { } }
 | |
|      { trailing "someuser2" } } }
 | |
| [ ":someuser!n=user@some.where NICK :someuser2"
 | |
|   parse-irc-line f >>timestamp ] unit-test
 | |
| 
 | |
| { T{ nick-in-use
 | |
|      { line ":ircserver.net 433 * nickname :Nickname is already in use" }
 | |
|      { prefix "ircserver.net" }
 | |
|      { command "433" }
 | |
|      { parameters { "*" "nickname" } }
 | |
|      { name "nickname" }
 | |
|      { trailing "Nickname is already in use" } } }
 | |
| [ ":ircserver.net 433 * nickname :Nickname is already in use"
 | |
|   parse-irc-line f >>timestamp ] unit-test |