MenuUiNodeTypeTest.php in Drupal 10
File
core/modules/menu_ui/tests/src/Kernel/MenuUiNodeTypeTest.php
View source
<?php
namespace Drupal\Tests\menu_ui\Kernel;
use Drupal\KernelTests\KernelTestBase;
use Drupal\node\Entity\NodeType;
use Drupal\system\Entity\Menu;
use Drupal\Tests\node\Traits\ContentTypeCreationTrait;
class MenuUiNodeTypeTest extends KernelTestBase {
use ContentTypeCreationTrait;
protected static $modules = [
'field',
'menu_ui',
'node',
'system',
'text',
'user',
];
private function assertMenuNamesAreSorted(NodeType $node_type) : void {
$expected_options = [
'b' => 'X',
'c' => 'Y',
'a' => 'Z',
];
$form = $this->container
->get('entity.form_builder')
->getForm($node_type, $node_type
->isNew() ? 'add' : 'edit');
$this
->assertSame($expected_options, $form['menu']['menu_options']['#options']);
}
public function testContentTypeMenuSettings() : void {
$this
->installConfig([
'node',
]);
Menu::create([
'id' => 'a',
'label' => 'Z',
])
->save();
Menu::create([
'id' => 'b',
'label' => 'X',
])
->save();
Menu::create([
'id' => 'c',
'label' => 'Y',
])
->save();
$this
->assertMenuNamesAreSorted(NodeType::create());
$this
->assertMenuNamesAreSorted($this
->createContentType());
}
}