function ConfigEntityStatusUITest::testCRUD

Same name in other branches
  1. 8.9.x core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php \Drupal\Tests\config\Functional\ConfigEntityStatusUITest::testCRUD()
  2. 10 core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php \Drupal\Tests\config\Functional\ConfigEntityStatusUITest::testCRUD()
  3. 11.x core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php \Drupal\Tests\config\Functional\ConfigEntityStatusUITest::testCRUD()

Tests status operations.

File

core/modules/config/tests/src/Functional/ConfigEntityStatusUITest.php, line 29

Class

ConfigEntityStatusUITest
Tests configuration entity status UI functionality.

Namespace

Drupal\Tests\config\Functional

Code

public function testCRUD() {
    $this->drupalLogin($this->drupalCreateUser([
        'administer site configuration',
    ]));
    $id = strtolower($this->randomMachineName());
    $edit = [
        'id' => $id,
        'label' => $this->randomMachineName(),
    ];
    $this->drupalGet('admin/structure/config_test/add');
    $this->submitForm($edit, 'Save');
    $entity = \Drupal::entityTypeManager()->getStorage('config_test')
        ->load($id);
    // Disable an entity.
    $disable_url = $entity->toUrl('disable');
    $this->assertSession()
        ->linkByHrefExists($disable_url->toString());
    $this->drupalGet($disable_url);
    $this->assertSession()
        ->statusCodeEquals(200);
    $this->assertSession()
        ->linkByHrefNotExists($disable_url->toString());
    // Enable an entity.
    $enable_url = $entity->toUrl('enable');
    $this->assertSession()
        ->linkByHrefExists($enable_url->toString());
    $this->drupalGet($enable_url);
    $this->assertSession()
        ->statusCodeEquals(200);
    $this->assertSession()
        ->linkByHrefNotExists($enable_url->toString());
}

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