Skip to content

Permission Testing & Alignment - #3986

Merged
ssddanbrown merged 10 commits into
developmentfrom
permission_testing
Jan 24, 2023
Merged

ssddanbrown merged 10 commits into
developmentfrom
permission_testing

Conversation

@ssddanbrown

@ssddanbrown ssddanbrown commented Jan 21, 2023

Copy link
Copy Markdown
Member

This is a merge of the permission work done in #3908 , at commit 3083979, but only of the testing work/changes since the fundamental user permissions work came to a barrier.

Docs update

  • Update permissions user doc page.
    • Provide an "advanced" overview of deeper combination logic
  • Upgrade notice, linking to above added section for more details, advising slight change in logic handling.
  • Upgrade notice, potential longer db migration time on upgrade due to permission regeneration.

Only that relevant to the additional testing work.
Ported non-compatible elements, Now all tests passing apart from some
specific permission scenario tests which are probably correctly failing.
Updates some tests to better avoid messing environment state.
@ssddanbrown ssddanbrown added this to the Next Feature Release milestone Jan 21, 2023
@ssddanbrown ssddanbrown self-assigned this Jan 21, 2023
Updated with similar logic to that used in the user_permissions branch,
but all extracted to a seperate class for doing all fetch and collapse
work.
The runtime userCan() and the JointPermissionBuilder now share much of
the same logic for handling entity permission resolution.
As a way to check aggregate queries for required changes to need to
analyse across combined permission values.
Is a tweak upon the existing approach, mainly to store and query role
permission access in a way that allows muli-level states that may
override eachother. These states are represented in the new PermissionStatus
class.

This also simplifies how own permissions are stored and queried, to be
part of a single column.
Now all tests are passing.
Some level of manual checks to do.
Had misalignment between query and usercan, The nuance between fallback
and entity-role permissions was not taken into account by the query
system. Now added with new test cases to cover.
Added additional scnenario tests to cover
@ssddanbrown

Copy link
Copy Markdown
Member Author

Merging in now so things can be passively tested during other developments.
Will continue manual testing here and there on development up to release.

@ssddanbrown
ssddanbrown merged commit 0f113ec into development Jan 24, 2023
@ssddanbrown
ssddanbrown deleted the permission_testing branch January 24, 2023 21:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Development

Successfully merging this pull request may close these issues.

1 participant