ActionUninstallTest.php

Same filename and directory in other branches
  1. 8.9.x core/modules/action/tests/src/Functional/ActionUninstallTest.php
  2. 10 core/modules/action/tests/src/Functional/ActionUninstallTest.php
  3. 11.x core/modules/action/tests/src/Functional/ActionUninstallTest.php

Namespace

Drupal\Tests\action\Functional

File

core/modules/action/tests/src/Functional/ActionUninstallTest.php

View source
<?php

namespace Drupal\Tests\action\Functional;

use Drupal\Tests\BrowserTestBase;

/**
 * Tests that uninstalling Actions does not remove other modules' actions.
 *
 * @group action
 * @see \Drupal\views\Plugin\views\field\BulkForm
 * @see \Drupal\user\Plugin\Action\BlockUser
 */
class ActionUninstallTest extends BrowserTestBase {
    
    /**
     * Modules to install.
     *
     * @var array
     */
    protected static $modules = [
        'views',
        'action',
    ];
    
    /**
     * {@inheritdoc}
     */
    protected $defaultTheme = 'stark';
    
    /**
     * Tests Action uninstall.
     */
    public function testActionUninstall() {
        \Drupal::service('module_installer')->uninstall([
            'action',
        ]);
        $storage = $this->container
            ->get('entity_type.manager')
            ->getStorage('action');
        $storage->resetCache([
            'user_block_user_action',
        ]);
        $this->assertNotEmpty($storage->load('user_block_user_action'), 'Configuration entity \'user_block_user_action\' still exists after uninstalling action module.');
        $admin_user = $this->drupalCreateUser([
            'administer users',
        ]);
        $this->drupalLogin($admin_user);
        $this->drupalGet('admin/people');
        // Ensure we have the user_block_user_action listed.
        $this->assertSession()
            ->responseContains('<option value="user_block_user_action">Block the selected user(s)</option>');
    }

}

Classes

Title Deprecated Summary
ActionUninstallTest Tests that uninstalling Actions does not remove other modules' actions.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.