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:

  1. Know these tests are correctly assigning the necessary permissions to run
  2. Can turn off the super user access policy in D11, knowing it won't break core
  3. 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:

  1. Remove the code below that sets the usesSuperUserAccessPolicy to TRUE.
  2. 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

  1. core/modules/layout_builder/tests/src/
    • Functional/LayoutBuilderOverridesTest.php

Issue fork drupal-3439893

Command icon 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:

Comments

vensires created an issue. See original summary.

thebumik made their first commit to this issue’s fork.

thebumik’s picture

Status: Active » Needs review

Would greatly appreciate it if someone could review my pull request for this. Any feedback would be invaluable!

kristiaanvandeneynde’s picture

Status: Needs review » Needs work
    1)
    Drupal\Tests\file\Functional\DownloadTest::testPrivateFileTransferWithoutPageCache
    Correctly denied access to a file when file_test sets the header to -1.
    Failed asserting that 200 is identical to 403.
    
    /builds/issue/drupal-3439893/vendor/phpunit/phpunit/src/Framework/Constraint/Constraint.php:121
    /builds/issue/drupal-3439893/vendor/phpunit/phpunit/src/Framework/Constraint/IsIdentical.php:79
    /builds/issue/drupal-3439893/core/modules/file/tests/src/Functional/DownloadTest.php:138
    /builds/issue/drupal-3439893/core/modules/file/tests/src/Functional/DownloadTest.php:76
    /builds/issue/drupal-3439893/vendor/phpunit/phpunit/src/Framework/TestResult.php:728
kristiaanvandeneynde’s picture

Not sure how that one is related to the code here, though. Double-checking.

kristiaanvandeneynde’s picture

Status: Needs work » Reviewed & tested by the community

Okay so it was a random test failure. RTBC then, but keeping an eye on this random failure.

alexpott’s picture

Version: 11.x-dev » 10.3.x-dev
Status: Reviewed & tested by the community » Fixed

Committed and pushed 0b3e6f1aaa to 11.x and 4b1e7c9e43 to 10.3.x. Thanks!

  • alexpott committed c3cac16e on 10.3.x
    Issue #3439893 by thebumik, vensires: Fix Layout Builder tests that rely...

  • alexpott committed fbe64244 on 11.x
    Issue #3439893 by thebumik, vensires: Fix Layout Builder tests that rely...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.