Alex Bramley
6a54622df9
Make mockNetConn more likely to expose racy conditions.
...
Use buffered channels so that Close() returns without waiting.
Use an array of three channels rather than appending to a slice.
2011-11-11 10:48:58 +00:00
Alex Bramley
dc524420b0
Test write(). Fix bug where return of Flush() was not checked.
2011-11-11 10:17:17 +00:00
Alex Bramley
19ea7138e5
Test runLoop(). Needed a lot of sleeps...
2011-11-11 09:23:12 +00:00
Alex Bramley
9ccb0a39ab
Test recv().
2011-11-11 08:35:23 +00:00
Alex Bramley
0d4e83ea7f
Fix length bug in mockNetChan.
...
Using the length of the provided buffer is dangerous after the first buffered
read from it, as it'll be the length of the buffer size...
2011-11-11 08:34:55 +00:00
Alex Bramley
38cd23891a
Streamline timers in mockNetConn slightly.
2011-11-11 08:00:18 +00:00
Alex Bramley
bfdd895ca6
Test send().
2011-11-11 07:59:16 +00:00
Alex Bramley
d4aceddcd7
Test Client creation and ST enable/disable.
2011-11-10 15:06:44 +00:00
Alex Bramley
a271cc06f3
Use mock dispatcher for testing event triggering.
2011-11-07 14:53:07 +00:00
Alex Bramley
3feaa7f302
Use a static map of event handlers for internal handlers too.
2011-11-07 13:44:03 +00:00
Alex Bramley
aa75e0e0c6
Make enabling/disabling state-tracking easier. Improve constructors.
2011-11-07 13:34:13 +00:00
Alex Bramley
4853024928
Nuke extraneous makefiles, no longer needed.
2011-11-06 06:26:59 +00:00
Alex Bramley
caa9429a74
Update README.
2011-11-06 05:22:02 +00:00
Alex Bramley
2bc8238f8e
Move state-related handlers to their own file for clarity.
2011-11-06 05:11:49 +00:00
Alex Bramley
85097043cf
Epic final commit for nick/chan/logging/testing refactor.
...
* Brings logging changes to client library.
* Brings state tracker to client library.
* Rewrites all tests to use mock logger and mock state tracker.
* Makes state tracking optional, finally.
* Shaves yaks until they are almost completely bald.
2011-11-06 04:56:46 +00:00
Alex Bramley
f128ce84b4
Start of breaking out state tracking into separate package.
2011-10-08 10:42:15 +01:00
Alex Bramley
a0020f4e62
Method to initialise tracker memory.
2011-10-08 10:40:58 +01:00
Alex Bramley
d072abbb76
Give nicks an awareness of me.
2011-10-07 00:19:31 +01:00
Alex Bramley
7a17ee9eb5
State tracking refactor completer.
2011-10-06 23:54:34 +01:00
Alex Bramley
e36caa3a3d
Merge branch 'logging' into nickchan-refactor
...
Conflicts:
client/nickchan.go
Fix up some inconsistencies in the beginning of the nickchan refactor too.
2011-10-06 22:33:06 +01:00
Alex Bramley
3e1b2c0f81
Turns out gofmt isn't big on spaces sometimes.
2011-09-29 22:58:04 +01:00
Alex Bramley
de66051d07
Convert conn.Err into logging.
...
Also, remove all error-side-effect testing cos it was a bit shit.
First step on the long road to refactoring the nick/chan state tracking
and making everything more testable and mockable with interfaces.
2011-09-29 22:54:54 +01:00
Alex Bramley
eb6ac4ce05
Tracking wip.
2011-09-28 20:48:58 +01:00
Alex Bramley
c400a2141a
Run gofmt over code, it's been a while.
2011-09-12 23:25:09 +01:00
Alex Bramley
18c20080e8
Test handler for 671 replies.
2011-09-12 23:21:40 +01:00
Alex Bramley
b0e0be0fe3
Check all nicks against current channel contents for 353 handler.
2011-09-12 23:21:15 +01:00
Alex Bramley
6c1d345f0b
Test handler for 353 replies.
2011-09-12 23:14:08 +01:00
Alex Bramley
9d896f2693
Test for 352 RPL_WHOREPLY.
2011-09-11 11:01:28 +01:00
Alex Bramley
d4ae3b588d
Test for 332 RPL_TOPIC.
2011-09-09 23:27:45 +01:00
Alex Bramley
4008b84db6
Test handler for 324 RPL_CHANNELMODEIS.
2011-09-09 23:24:08 +01:00
Alex Bramley
47ae014c1c
Whitespace fix.
2011-09-09 23:04:27 +01:00
Alex Bramley
8ae5fe3b75
Another minor indexing bug :-/
2011-09-09 23:04:12 +01:00
Alex Bramley
ff855691cf
Test the 311 RPL_WHOISUSER handler.
2011-09-09 23:03:44 +01:00
Alex Bramley
daadb2c96e
Test the TOPIC handler.
2011-09-09 23:02:33 +01:00
Alex Bramley
d15d1074f5
Fix bug found by MODE handler test.
2011-09-09 22:33:08 +01:00
Alex Bramley
c5146e93f6
Add MODE handler test. These are starting to feel clunky.
2011-09-09 22:32:55 +01:00
Alex Bramley
df893eb6d0
QUIT handler test.
2011-08-31 22:55:56 +01:00
Alex Bramley
b306650af5
Tests for the KICK handler.
2011-08-30 23:15:54 +01:00
Alex Bramley
788c69aaa8
Fix same logic bug in KICK handler.
2011-08-30 23:08:10 +01:00
Alex Bramley
d74fd18d3d
Fixed logic bug, but it's a bit ugly :-/
2011-08-24 14:39:27 +01:00
Alex Bramley
4c0f62666d
Test for h_PART -- exposed a logic bug :-/
2011-08-24 14:34:11 +01:00
Alex Bramley
52e74b3f1a
Rewrite JOIN handler test to avoid re-testing all the state tracking logic repeatedly.
2011-08-24 13:58:00 +01:00
Alex Bramley
c5e13b8b12
Make NICK handler test a little more accurate.
2011-08-24 13:58:00 +01:00
Alex Bramley
cf8ab830f7
Move some basic assertions about initial state into setUp().
2011-08-24 13:58:00 +01:00
Alex Bramley
389f5247f5
Helpers for testing whether Conn errors are triggered.
2011-08-24 13:58:00 +01:00
Alex Bramley
6815c19bb3
Start of JOIN test. Seems like the wrong approach.
2011-08-24 12:46:21 +01:00
Alex Bramley
b8c3f42252
Better line ending handling in MockNetConn.
2011-08-24 12:45:32 +01:00
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