Problem/Motivation
In #540008: Add a container parameter that can remove the special behavior of UID#1 an approach was taken where we can simply flag tests that are failing if we turn off user 1's super user powers, so that they can be taken care of in a followup. This issue is to collect all of these followups.
The goal is to have no tests in Drupal core that rely on UID1's special privileges so that we:
- Know these tests are correctly assigning the necessary permissions to run
- Can turn off the super user access policy in D11, knowing it won't break core
- Can remove the super user access policy in D12, providing an admin account recovery tool to replace it
Steps to reproduce
Go into any of the tests flagged with:
/**
* {@inheritdoc}
*
* @todo Remove and fix test to not rely on super user.
* @see https://www.drupal.org/project/drupal/issues/3437620
*/
And:
- Remove the code below that sets the usesSuperUserAccessPolicy to TRUE.
- Run the test to see which test methods are failing
Proposed resolution
Assign the right permissions to make the test go green without the super user access policy. Those few tests that specifically test said policy can obviously stay, but will be removed along with the policy in D12.
Remaining tasks
- core/modules/path/tests/src/
- Functional/PathContentModerationTest.php
| Comment | File | Size | Author |
|---|---|---|---|
| #5 | 3439904-nr-bot.txt | 1.49 KB | needs-review-queue-bot |
Issue fork drupal-3439904
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
- 3439904-fix-path-tests
changes, plain diff MR !7429
Comments
Comment #4
thebumik commentedFixed path tests. Please review
Comment #5
needs-review-queue-bot commentedThe Needs Review Queue Bot tested this issue. It fails the Drupal core commit checks. Therefore, this issue status is now "Needs work".
This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.
Consult the Drupal Contributor Guide to find step-by-step guides for working with issues.
Comment #6
kristiaanvandeneyndeComment #7
thebumik commentedComment #8
kristiaanvandeneyndeLeft a comment, not sure if we want to switch from relying on UID1 to relying on being able to bypass all node permissions. The goal is that our tests prove that whoever has the right permissions (without super user stuff), can use the website as intended for their role.
Comment #9
smustgrave commentedLeft a comment but not sure we need all those modules installed for this test
Comment #10
thebumik commentedComment #11
smustgrave commentedReviewed the permissions and believe those should be fine, didn't seem to have a crazy one to me.
Comment #12
larowlanLeft a comment on the MR
Comment #13
thebumik commentedComment #14
smustgrave commentedFeedback addressed.
Comment #15
alexpottAdded a couple of comments to the MR. There's no need to add permissions as a class property to the test.
Comment #17
thebumik commentedAddressed the comments from PR.
Comment #18
thebumik commentedComment #19
smustgrave commentedThanks for addressing @thebumik.
Comment #20
alexpottCommitted and pushed eeb7e60c30 to 11.x and 7e4ccefc08 to 10.3.x. Thanks!