Commit Graph

57 Commits

Author SHA1 Message Date
Alex Bramley 83da879ad3 Add tearDown() to all tests. 2011-08-23 11:06:06 +01:00
Alex Bramley 8fc23d5c17 Test CTCP handler. 2011-08-23 11:03:59 +01:00
Alex Bramley 7d9b8c3099 Add tests for explicit and implicit (via EOF) shutdown; fix bug ;-) 2011-08-23 10:53:52 +01:00
Alex Bramley 770c5eb5ac Use ExpectNothing() to make sure handlers don't generate unexpected output. 2011-08-23 10:52:16 +01:00
Alex Bramley 5ff77fc2f9 Add mock dispatcher factory that tests an event fired; use it in Test001(). 2011-08-23 10:50:43 +01:00
Alex Bramley 59b18b038b MockNetConn: Add ExpectNothing() helper. 2011-08-23 10:44:14 +01:00
Alex Bramley bd388db1cc MockNetConn: Use correct os.Errors in Read/Write. 2011-08-23 10:43:48 +01:00
Alex Bramley 020730aca1 MockNetConn: Wrap all channel reads in selects; send EOF on Close(); kill goroutines correctly. 2011-08-23 10:42:54 +01:00
Alex Bramley b04196327a Begin testing event handlers. 2011-08-22 23:24:05 +01:00
Alex Bramley 4e7f272b3f Mock dispatcher for testing. 2011-08-22 23:23:29 +01:00
Alex Bramley 0d7d875b9f Add Send method for mockNetConn, and make Read/Write return errors when closed. 2011-08-22 23:22:46 +01:00
Alex Bramley 48ad9bfa4a Line parsing needs to handle CTCPREPLY too. 2011-08-22 23:21:30 +01:00
Alex Bramley f3a2cf6fa6 Make connected externally accessible, per issues/8. 2011-08-22 17:09:48 +01:00
Alex Bramley fb91caeccf Fix comment for Conn struct. 2011-08-21 13:57:47 +01:00
Alex Bramley 820f0cb14b Test all client commands. 2011-08-21 13:38:51 +01:00
Alex Bramley 425557e8bd Create a simple mock that implements net.Conn. 2011-08-21 13:38:12 +01:00
Alex Bramley 045679dd42 Split Connect() into two pieces for testing purposes. 2011-08-21 13:31:18 +01:00
Alex Bramley a95da1cb2c Enforce upper-case CTCP commands. 2011-08-21 13:22:26 +01:00
Alex Bramley b32e8d050f Gofix for r59. 2011-08-03 08:04:01 +01:00
Alex Bramley cd53356ca6 Merge branch 'master' into release 2011-08-03 08:03:20 +01:00
Alex Bramley 1a4ce96e00 Gofix for r59. 2011-08-03 08:03:08 +01:00
Alex Bramley 2efe298c75 Make IRCHandler the function type, make NewHandler the factory. 2011-07-30 19:42:10 +01:00
Alex Bramley 43a2bf08f1 Make IRCHandler the function type, make NewHandler the factory. 2011-07-30 19:41:50 +01:00
Alex Bramley 1d82af0080 Impolite to break the 'IRC event provides Conn, Line' contract. 2011-07-30 19:35:08 +01:00
Alex Bramley 9c94b0b3e0 Impolite to break the 'IRC event provides Conn, Line' contract. 2011-07-30 19:34:55 +01:00
Alex Bramley 1849d886d4 Revert "Merge branch 'master' into release"
This reverts commit 2528d13314, reversing
changes made to f0a9246c7a.
2011-07-29 23:14:21 +01:00
Alex Bramley 2f31ca5dcf Oh, god damnit. Should at least *try* to build things to make sure they work. 2011-07-28 18:02:02 +01:00
Alex Bramley 364c6da7ae Add a function to make a copy of a *Line (bar the Time field). 2011-07-28 17:56:14 +01:00
Alex Bramley 47d4587ca3 Revert "Weekly commits shouldn't be on release branch"
This reverts commit 934ee04fcf.
2011-07-28 12:14:51 +01:00
Alex Bramley 8fed417dce Oh wait event isn't local. 2011-07-28 00:41:47 +01:00
Alex Bramley 303d3724e2 Break out unboxing code; pass conn/line objects for other events. 2011-07-28 00:24:07 +01:00
Alex Bramley 8e6de2f3c7 Add an overridable Dispatcher to Conn, and use that to dispatch events. 2011-07-27 21:40:56 +01:00
Alex Bramley 900afb5c48 Put nil checking in correct place. 2011-07-27 21:15:09 +01:00
Alex Bramley 33a5bff35b Move line parsing done in dispatchEvent into ParseLine(). 2011-07-27 21:10:37 +01:00
Alex Bramley 5e814babc7 Move to using the new event registry internally. 2011-07-27 21:10:01 +01:00
Alex Bramley 934ee04fcf Weekly commits shouldn't be on release branch 2011-07-26 20:25:14 +01:00
Alex Bramley d2cfe6eb6f Tidy up old-style slice syntax, and use string methods for CTCP parsing. 2011-07-25 23:02:57 +01:00
Alex Bramley 65ae4394fc Update for weekly of 2011-07-16; changes to string.Split(). 2011-07-25 22:27:52 +01:00
Alex Bramley ddd913547c Add field in Conn to allow external state to be propagated to event handlers. 2011-07-25 22:27:09 +01:00
Alex Bramley c3715be829 Use second constant in SetTimeout(). 2011-07-22 01:20:25 +01:00
Alex Bramley 07d5c0676e Fix compile error when NewNick() is called before initialise(). 2011-07-22 01:20:07 +01:00
Alex Bramley 6634869fe6 Use connected bool properly to ensure shutdown() can't be called twice. 2011-07-22 01:17:35 +01:00
Alex Bramley 291132cab5 Refactor recv() since we needed to rewrite send(). 2011-07-22 01:11:15 +01:00
Alex Bramley 0200b741dc Fix for issues/6 (2/2): Move to using control channels and select. 2011-07-22 01:08:42 +01:00
Alex Bramley eb51558009 Fix for issues/6 (1/2): Don't close channels when disconnected. 2011-07-21 23:03:11 +01:00
Alex Bramley a5a4f989ac Update SSL connectivity to use tls.Dial now it supports a config arg. 2011-07-21 22:00:45 +01:00
Alex Bramley 9748f9c47e Oops, timeouts are int64 nanoseconds. 2011-07-21 21:59:01 +01:00
Alex Bramley 5027646478 gofix run 2011-07-18 09:14:58 +01:00
Alex Bramley 83b482f8ce Make socket timeouts a configurable thingy. 2011-07-17 13:48:12 +01:00
raylu a19bce5998 Make a timeout so that Conn.Err closes when the connection is lost 2011-07-17 13:35:15 +01:00