MockMenuBlock.php in Zircon Profile 8.0
Same filename and directory in other branches
File
core/modules/system/tests/modules/plugin_test/src/Plugin/plugin_test/mock_block/MockMenuBlock.phpView source
<?php
/**
* @file
* Contains \Drupal\plugin_test\Plugin\plugin_test\mock_block\MockMenuBlock.
*/
namespace Drupal\plugin_test\Plugin\plugin_test\mock_block;
/**
* Mock implementation of a menu block plugin used by Plugin API unit tests.
*
* @see \Drupal\plugin_test\Plugin\MockBlockManager
*/
class MockMenuBlock {
/**
* The title to display when rendering this block instance.
*
* @var string
*/
protected $title;
/**
* The number of menu levels deep to render.
*
* @var integer
*/
protected $depth;
public function __construct($title = '', $depth = 0) {
$this->title = $title;
$this->depth = $depth;
}
/**
* Returns the content to display.
*/
public function getContent() {
// Since this is a mock object, we just return some HTML of the desired
// nesting level. For depth=2, this returns:
// '<ul><li>1<ul><li>1.1</li></ul></li></ul>'.
$content = '';
for ($i = 0; $i < $this->depth; $i++) {
$content .= '<ul><li>' . implode('.', array_fill(0, $i + 1, '1'));
}
for ($i = 0; $i < $this->depth; $i++) {
$content .= '</li></ul>';
}
return $content;
}
}
Classes
Name | Description |
---|---|
MockMenuBlock | Mock implementation of a menu block plugin used by Plugin API unit tests. |