- Fixed bug with `directMessage(string, string[])` when more than one user in a multi-case was passed in
Unit tests
- Added two more unit tests relating to direct messages
- Namely testing out two scenarios for `directMessage(string, string[])`
- Fixed bug whereby the leaving of multiple channels broke after the first channel in `leaveChannel(string[])`
Unit tests
- Test leaving multiple channels, a single channel (singular) and a single channel (multi)
- Test `directMessage(string, string)` (so singular) to send to myself
- Adding such a test will test the direct message receive handler which helps us a lot in increasing code coverage
- Fixed bug in `channelMessage(string, string[])` in the case where multiple channels were specified then the message would fail to send to the channels after the first one specified
Unit tests
- Disabled using `command(string, string, string)` to join a channel, rather use `joinChannel(string)`
- Added tests for singular `channelMessage(string, string[])` and multiple `channelMessage(string, string[])`
- Fixed bug within `channelMessage(string,string[])` which would leave the channel provided instead of sending the message provided to the the channel provided as it called `leaveChannel(channel[0])` instead of `channelMessage(string, string)`
- command(Message) - Let the user isssue a generic command
- joinChannel(string) - join the given channel
- When a numeric reply is received a Reply struct is now created containing a boolean indicating if there is an error, the ReplyType (as per the RFC) and the "params" (as a string), this is done via overriding the `onCommandReply(Reply)` method
- Added onGenericCommand(Message) - for when it doesn't have a special handler and is not a numeric reply (command response)
- Added special handler for private messages and channel messages (not used yet)
- WIP: PrivMesg handling
New types:
- Reply - response struct type
- ReplyType - the numeric response number
- Renamed Message fields
- Moved encode() and decode() into Message as static methods
- Fully integrated eventy
- PongEvent and IRCEvent along with respective GenericSignal and PingSignal handlers added
- Moved parsing of messages into Message class
Debugging
- Added dlog which always logs (for now, we should add a debug clause that enables it)
- Create IRCEvent type
- Print out information for handling of IRCEvent in the signal handler registered with Eventy
- Finished initial message parser (splits into `from`, `command` and `params`)