Software /
code /
prosody
File
teal-src/util/roles.d.tl @ 12746:7eabf8d78978
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.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Fri, 07 Oct 2022 16:58:08 +0100 |
parent | 12661:1c391c17a907 |
line wrap: on
line source
local record util_roles type context = any record Role id : string name : string description : string default : boolean priority : number -- or integer? permissions : { string : boolean } may : function (Role, string, context) clone : function (Role, role_config) set_permission : function (Role, string, boolean, boolean) end is_role : function (any) : boolean record role_config name : string description : string default : boolean priority : number -- or integer? inherits : { Role } permissions : { string : boolean } end new : function (role_config, Role) : Role end return util_roles