mediawiki-skins-MinervaNeue/tests/phpunit/menu/MenuEntryTest.php
Piotr Miazga 1f4582cc09 Provide a code structure for menus handling and add Advanced menu
Changes:
 - moved all menu elements definitions from SkinMinerva into
 a separate Definitions.php file
 - moved menu building from SkinMinerva into includes/menu/Main
 folder
 - introduced Builder pattern for easy menu building
 Minerva/Menu/Main/Director takes an Minerva/Menu/Main/IBuilder
 and builds the menu. The IBuilders use definitions from
 Minerva/Menu/Definitions file, so all definitions can be shared
 across different menus
 - used ServiceWiring file to register MainMenu Director as Service
 - left class_alias for old MenuBuilder as some extensions still use it
 - The hooks system have to stay like that as some extensions
 are using it (BlueSpiceMultiUpload and GrowthExperiments).
 - introduced AdvancedMenu builder for the AMC mode

Bug: T216152
Change-Id: I210c3f1fa36bbd2f9108d728b12cbb21ee210354
2019-04-16 13:19:51 +02:00

28 lines
630 B
PHP

<?php
namespace Tests\MediaWiki\Minerva\Menu;
use MediaWiki\Minerva\Menu\MenuEntry;
/**
* @group MinervaNeue
* @coversDefaultClass \MediaWiki\Minerva\Menu\MenuEntry
*/
class MenuEntryTest extends \MediaWikiTestCase {
/**
* @covers ::__construct
* @covers ::getName()
* @covers ::isJSOnly()
* @covers ::getComponents()
*/
public function testMenuEntryConstruction() {
$name = 'test';
$isJSOnly = true;
$entry = new MenuEntry( $name, $isJSOnly );
$this->assertSame( $name, $entry->getName() );
$this->assertSame( $isJSOnly, $entry->isJSOnly() );
$this->assertSame( [], $entry->getComponents() );
}
}