While all of zdaemon could benefit from a level of testing, plusplus parsing & responses in particular seems like they might be particularly ripe. There's a decent number of tricky corner cases that need to be handled, and thus could benefit from a test suite.
Just off the top of my head:
basic functionality (++, --, ~~).
timeouts (e.g. once per hour)
some special behaviors/filters (e.g. self-plusplussing)
slack entities
RTL text interactions (both in input and output).
There's some hope, because the slack/zulip design currently gives a partial, but not complete, ability to mock the underlying APIs. For example, you can easily control input and replies, but mocking the database will need special handling. Likewise, slack entity handling isn't easy to mock right now.
While all of zdaemon could benefit from a level of testing, plusplus parsing & responses in particular seems like they might be particularly ripe. There's a decent number of tricky corner cases that need to be handled, and thus could benefit from a test suite.
Just off the top of my head:
There's some hope, because the slack/zulip design currently gives a partial, but not complete, ability to mock the underlying APIs. For example, you can easily control input and replies, but mocking the database will need special handling. Likewise, slack entity handling isn't easy to mock right now.