Issue #3439833 by pooja_sharma, smustgrave, vensires: Fix Content Translation tests that rely on UID1's super user behavior

merge-requests/6935/merge
quietone 2024-09-05 13:36:58 +12:00
parent b80bfda19d
commit 9e76aa57ca
No known key found for this signature in database
GPG Key ID: 43BFBBB26EA09FE1
6 changed files with 16 additions and 40 deletions

View File

@ -5,6 +5,7 @@ declare(strict_types=1);
namespace Drupal\Tests\content_translation\Functional;
use Drupal\Tests\BrowserTestBase;
use Drupal\user\Entity\Role;
/**
* Test enabling content translation module.
@ -20,14 +21,6 @@ class ContentTranslationEnableTest extends BrowserTestBase {
*/
protected static $modules = ['entity_test', 'menu_link_content', 'node'];
/**
* {@inheritdoc}
*
* @todo Remove and fix test to not rely on super user.
* @see https://www.drupal.org/project/drupal/issues/3437620
*/
protected bool $usesSuperUserAccessPolicy = TRUE;
/**
* {@inheritdoc}
*/
@ -37,6 +30,11 @@ class ContentTranslationEnableTest extends BrowserTestBase {
* Tests that entity schemas are up-to-date after enabling translation.
*/
public function testEnable(): void {
$this->rootUser = $this->drupalCreateUser([
'administer modules',
'administer site configuration',
'administer content types',
]);
$this->drupalLogin($this->rootUser);
// Enable modules and make sure the related config entity type definitions
// are installed.
@ -46,6 +44,7 @@ class ContentTranslationEnableTest extends BrowserTestBase {
];
$this->drupalGet('admin/modules');
$this->submitForm($edit, 'Install');
$this->rebuildContainer();
// Status messages are shown.
$this->assertSession()->statusMessageContains('This site has only a single language enabled. Add at least one more language in order to translate content.', 'warning');
@ -55,6 +54,10 @@ class ContentTranslationEnableTest extends BrowserTestBase {
$this->drupalGet('admin/reports/status');
$this->assertSession()->elementTextEquals('css', "details.system-status-report__entry summary:contains('Entity/field definitions') + div", 'Up to date');
$this->grantPermissions(Role::load(Role::AUTHENTICATED_ID), [
'administer content translation',
'administer languages',
]);
$this->drupalGet('admin/config/regional/content-language');
// The node entity type should not be an option because it has no bundles.
$this->assertSession()->responseNotContains('entity_types[node]');

View File

@ -25,14 +25,6 @@ class ContentTranslationNewTranslationWithExistingRevisionsTest extends ContentT
'node',
];
/**
* {@inheritdoc}
*
* @todo Remove and fix test to not rely on super user.
* @see https://www.drupal.org/project/drupal/issues/3437620
*/
protected bool $usesSuperUserAccessPolicy = TRUE;
/**
* {@inheritdoc}
*/

View File

@ -14,14 +14,6 @@ use Drupal\language\Entity\ConfigurableLanguage;
*/
class ContentTranslationOutdatedRevisionTranslationTest extends ContentTranslationPendingRevisionTestBase {
/**
* {@inheritdoc}
*
* @todo Remove and fix test to not rely on super user.
* @see https://www.drupal.org/project/drupal/issues/3437620
*/
protected bool $usesSuperUserAccessPolicy = TRUE;
/**
* {@inheritdoc}
*/

View File

@ -79,6 +79,11 @@ abstract class ContentTranslationPendingRevisionTestBase extends ContentTranslat
* Enables content moderation for the test entity type and bundle.
*/
protected function enableContentModeration() {
$perms = array_merge(parent::getAdministratorPermissions(), [
'administer workflows',
'view latest version',
]);
$this->rootUser = $this->drupalCreateUser($perms);
$this->drupalLogin($this->rootUser);
$workflow_id = 'editorial';
$this->drupalGet('/admin/config/workflow/workflows');

View File

@ -14,14 +14,6 @@ use Drupal\language\Entity\ConfigurableLanguage;
*/
class ContentTranslationRevisionTranslationDeletionTest extends ContentTranslationPendingRevisionTestBase {
/**
* {@inheritdoc}
*
* @todo Remove and fix test to not rely on super user.
* @see https://www.drupal.org/project/drupal/issues/3437620
*/
protected bool $usesSuperUserAccessPolicy = TRUE;
/**
* {@inheritdoc}
*/

View File

@ -24,14 +24,6 @@ class ContentTranslationUntranslatableFieldsTest extends ContentTranslationPendi
*/
protected static $modules = ['field_test'];
/**
* {@inheritdoc}
*
* @todo Remove and fix test to not rely on super user.
* @see https://www.drupal.org/project/drupal/issues/3437620
*/
protected bool $usesSuperUserAccessPolicy = TRUE;
/**
* {@inheritdoc}
*/