MenuLinkContentDeleteFormTest.php in Drupal 9
File
core/modules/menu_link_content/tests/src/Functional/MenuLinkContentDeleteFormTest.php
View source
<?php
namespace Drupal\Tests\menu_link_content\Functional;
use Drupal\menu_link_content\Entity\MenuLinkContent;
use Drupal\system\Entity\Menu;
use Drupal\Tests\BrowserTestBase;
class MenuLinkContentDeleteFormTest extends BrowserTestBase {
protected static $modules = [
'menu_link_content',
];
protected $defaultTheme = 'stark';
protected function setUp() : void {
parent::setUp();
$web_user = $this
->drupalCreateUser([
'administer menu',
]);
$this
->drupalLogin($web_user);
}
public function testMenuLinkContentDeleteForm() {
$this
->drupalGet('admin/structure/menu/manage/admin/add');
$this
->submitForm([
'title[0][value]' => t('Front page'),
'link[0][uri]' => '<front>',
], 'Save');
$this
->assertSession()
->pageTextContains('The menu link has been saved.');
$menu_link = MenuLinkContent::load(1);
$this
->drupalGet($menu_link
->toUrl('delete-form'));
$this
->assertSession()
->pageTextContains("Are you sure you want to delete the custom menu link {$menu_link->label()}?");
$this
->assertSession()
->linkExists('Cancel');
$this
->assertSession()
->linkByHrefExists($menu_link
->toUrl('edit-form')
->toString());
\Drupal::service('module_installer')
->install([
'menu_ui',
]);
$this
->drupalGet($menu_link
->toUrl('delete-form'));
$menu = Menu::load($menu_link
->getMenuName());
$this
->assertSession()
->linkByHrefExists($menu
->toUrl('edit-form')
->toString());
$this
->submitForm([], 'Delete');
$this
->assertSession()
->pageTextContains("The menu link {$menu_link->label()} has been deleted.");
}
}