Sat, 08 Oct 2022 20:33:01 +0100 util.roles: Add some more missing test cases
Matthew Wild <mwild1@gmail.com> [Sat, 08 Oct 2022 20:33:01 +0100] rev 12757
util.roles: Add some more missing test cases Found via mutation testing.
Fri, 07 Oct 2022 18:04:30 +0100 util.promise: Fix field name in failing test (introduced in 2639e0e1c378)
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 18:04:30 +0100] rev 12756
util.promise: Fix field name in failing test (introduced in 2639e0e1c378)
Fri, 07 Oct 2022 17:56:38 +0100 util.promise: Add some missing test cases (found through mutation testing)
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 17:56:38 +0100] rev 12755
util.promise: Add some missing test cases (found through mutation testing)
Fri, 07 Oct 2022 17:45:23 +0100 util.promise: Remove line that was supposed to be removed in eb9814372c54
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 17:45:23 +0100] rev 12754
util.promise: Remove line that was supposed to be removed in eb9814372c54
Fri, 07 Oct 2022 17:43:26 +0100 util.promise: Remove some redundant checks, add tests confirming redundancy
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 17:43:26 +0100] rev 12753
util.promise: Remove some redundant checks, add tests confirming redundancy This lines don't appear to do anything useful, and all tests pass when they are removed. Discovered via mutation testing. I added extra tests to exercise this code, because I wasn't certain that there were no side-effects caused by removal. Everything appears to be fine, thanks to the "pending" check at the start of promise_settle().
Fri, 07 Oct 2022 17:01:35 +0100 util.roles: Add a :policies() method to iterate through available policies
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 17:01:35 +0100] rev 12752
util.roles: Add a :policies() method to iterate through available policies We don't expose the policies directly, to force people to go through :may(). However, there are times when we really just need to know what policies a role has inside it (e.g. for reporting or debugging purposes).
Fri, 07 Oct 2022 16:58:52 +0100 util.roles: Add tests
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 16:58:52 +0100] rev 12751
util.roles: Add tests
Fri, 07 Oct 2022 16:58:08 +0100 util.roles: Return nil if the role has no explicit policy (fixes inheritance)
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 16:58:08 +0100] rev 12750
util.roles: Return nil if the role has no explicit policy (fixes inheritance) Previously, if the first inherited role had no opinion, it returned false and prevented further consultation of other inherited roles. This bug was found thanks to the implementation of missing test cases identified through mutation testing.
Fri, 07 Oct 2022 11:35:56 +0100 mod_smacks: Change boolean attribute from '1' to 'true' for compatibility
Matthew Wild <mwild1@gmail.com> [Fri, 07 Oct 2022 11:35:56 +0100] rev 12749
mod_smacks: Change boolean attribute from '1' to 'true' for compatibility Conversations 2.10.10 and earlier expect this to be literally 'true' and don't recognise '1'. This leads to it not attempting resumption with Prosody at all since this change was introduced in 36ba170c4fd0. Thanks to Zash for noticing, debugging and diagnosing this issue. This issue is fixed in Conversations commit 052c58f3 (unreleased at the time of writing).
Thu, 06 Oct 2022 18:34:40 +0100 util.iterators: join: Work even with only a single iterator in the chain
Matthew Wild <mwild1@gmail.com> [Thu, 06 Oct 2022 18:34:40 +0100] rev 12748
util.iterators: join: Work even with only a single iterator in the chain
(0) -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 tip