Verified Commit 6c1fc7e4 authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3439922 by amateescu, vensires: Fix Workspaces tests that rely on UID1's super user behavior

parent ce1fa38b
Loading
Loading
Loading
Loading
Loading
+11 −9
Original line number Diff line number Diff line
@@ -32,14 +32,6 @@ class PathWorkspacesTest extends BrowserTestBase {
    'workspaces',
  ];

  /**
   * {@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}
   */
@@ -60,7 +52,17 @@ protected function setUp(): void {
      'type' => 'article',
    ]);

    $this->drupalLogin($this->rootUser);
    $permissions = [
      'administer languages',
      'administer nodes',
      'administer url aliases',
      'administer workspaces',
      'create article content',
      'create content translations',
      'edit any article content',
      'translate any entity',
    ];
    $this->drupalLogin($this->drupalCreateUser($permissions));

    // Enable URL language detection and selection.
    $edit = ['language_interface[enabled][language-url]' => 1];
+21 −15
Original line number Diff line number Diff line
@@ -35,14 +35,6 @@ class WorkspaceTest extends BrowserTestBase {
    'workspaces',
  ];

  /**
   * {@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}
   */
@@ -178,15 +170,20 @@ public function testWorkspaceFormRevisions() {

  /**
   * Tests the manage workspace page.
   *
   * @group failing
   */
  public function testWorkspaceManagePage() {
    $this->drupalLogin($this->rootUser);
    $this->drupalCreateContentType(['type' => 'test', 'label' => 'Test']);

    $permissions = [
      'administer taxonomy',
      'administer workspaces',
      'create test content',
      'delete any test content',
    ];
    $this->drupalLogin($this->drupalCreateUser($permissions));
    $this->setupWorkspaceSwitcherBlock();
    $assert_session = $this->assertSession();

    $this->drupalCreateContentType(['type' => 'test', 'label' => 'Test']);
    $vocabulary = $this->createVocabulary();

    $test_1 = $this->createWorkspaceThroughUi('Test 1', 'test_1');
@@ -258,7 +255,12 @@ public function testDeleteWorkspaceWithExistingContent() {
    $this->createContentType(['type' => 'test', 'label' => 'Test']);

    // Login and create a workspace.
    $this->drupalLogin($this->rootUser);
    $permissions = [
      'administer workspaces',
      'create test content',
      'delete any test content',
    ];
    $this->drupalLogin($this->drupalCreateUser($permissions));
    $this->createAndActivateWorkspaceThroughUi('May 4', 'may_4');

    // Create a node in the workspace.
@@ -323,7 +325,11 @@ public function testWorkspaceList() {
   */
  public function testPublishWorkspace() {
    $this->createContentType(['type' => 'test', 'label' => 'Test']);
    $this->drupalLogin($this->rootUser);
    $permissions = [
      'administer workspaces',
      'create test content',
    ];
    $this->drupalLogin($this->drupalCreateUser($permissions));

    $this->drupalGet('/admin/config/workflow/workspaces/add');
    $this->submitForm([
@@ -340,7 +346,7 @@ public function testPublishWorkspace() {
    $this->assertSession()->pageTextContains('There are no changes that can be published from Test workspace to Live.');

    // Create a node in the workspace.
    $node = $this->createNodeThroughUi('Test node', 'test');
    $this->createNodeThroughUi('Test node', 'test');

    $this->drupalGet('/admin/config/workflow/workspaces/manage/test_workspace/publish');
    $this->assertSession()->statusCodeEquals(200);
+10 −6
Original line number Diff line number Diff line
@@ -22,23 +22,27 @@ class WorkspacesUninstallTest extends BrowserTestBase {

  /**
   * {@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;
  protected $defaultTheme = 'stark';

  /**
   * {@inheritdoc}
   */
  protected $defaultTheme = 'stark';
  protected function setUp(): void {
    parent::setUp();
    $permissions = [
      'administer workspaces',
      'administer modules',
    ];

    $this->drupalLogin($this->drupalCreateUser($permissions));
  }

  /**
   * Tests deleting workspace entities and uninstalling Workspaces module.
   */
  public function testUninstallingWorkspace() {
    $this->createContentType(['type' => 'article']);
    $this->drupalLogin($this->rootUser);
    $this->drupalGet('/admin/modules/uninstall');
    $session = $this->assertSession();
    $session->linkExists('Remove workspaces');