Commit Graph

263 Commits

Author SHA1 Message Date
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 5c347008fb Update README.md with external Connected var. 2011-08-22 17:16:32 +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 634377c04a Merge branch 'master' into release 2011-08-03 07:42:28 +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 bb703cc945 Fix SerialDispatcher test. 2011-07-29 23:15:17 +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 2528d13314 Merge branch 'master' into release 2011-07-29 23:11:14 +01:00
Alex Bramley 4994263773 Fix SerialDispatcher test. 2011-07-29 23:11:05 +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 f0a9246c7a Oh, god damnit. Should at least *try* to build things to make sure they work. 2011-07-28 18:01:46 +01:00
Alex Bramley d6ac053b62 Add a function to make a copy of a *Line (bar the Time field). 2011-07-28 17:58:15 +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 dc89882bf9 Makefile for event. 2011-07-28 00:35:19 +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 a2b53e6fc3 Rename registry -> event for gb purposes. 2011-07-27 21:00:23 +01:00
Alex Bramley 5843974562 Make struct registry conform to EventRegistry. 2011-07-27 20:59:58 +01:00
Alex Bramley 3e82bf33c3 unit tests, sort of. 2011-07-27 17:49:55 +01:00
Alex Bramley cce112465f Make Handler an interface type; make dispatcher private; correctly unbox ev. 2011-07-27 17:49:34 +01:00
Alex Bramley 2c10e19f58 More abstracted event registry. 2011-07-27 16:54:49 +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