BlockContextualLinksTest.php in Drupal 10
File
core/modules/block/tests/src/FunctionalJavascript/BlockContextualLinksTest.php
View source
<?php
namespace Drupal\Tests\block\FunctionalJavascript;
use Drupal\FunctionalJavascriptTests\WebDriverTestBase;
class BlockContextualLinksTest extends WebDriverTestBase {
protected static $modules = [
'user',
'block',
'contextual',
];
protected $defaultTheme = 'stark';
protected $blockId;
protected function setUp() : void {
parent::setUp();
$this->blockId = $this->defaultTheme . '_powered';
$this
->placeBlock('system_powered_by_block', [
'id' => $this->blockId,
'region' => 'content',
]);
}
public function testBlockContextualRemoveLinks() {
$this
->drupalLogin($this->rootUser);
$this
->drupalGet('<front>');
$contextual_id = "[data-contextual-id^='block:block={$this->blockId}:langcode=en']";
$this
->assertSession()
->waitForElement('css', "{$contextual_id} .contextual-links");
$expected_configure_block_link = base_path() . 'admin/structure/block/manage/' . $this->blockId;
$actual_configure_block_link = parse_url($this
->getSession()
->getPage()
->findLink('Configure block')
->getAttribute('href'));
$this
->assertEquals($expected_configure_block_link, $actual_configure_block_link['path']);
$expected_remove_block_link = base_path() . 'admin/structure/block/manage/' . $this->blockId . '/delete';
$actual_remove_block_link = parse_url($this
->getSession()
->getPage()
->findLink('Remove block')
->getAttribute('href'));
$this
->assertEquals($expected_remove_block_link, $actual_remove_block_link['path']);
}
}