3 declare(strict_types=1);
21 require_once(
"libs/composer/vendor/autoload.php");
22 require_once(__DIR__ .
"/../../Base.php");
38 protected I\Component\MainControls\Factory
$factory;
43 $sig_gen =
new I\Component\SignalGenerator();
44 $this->button_factory =
new I\Component\Button\Factory();
45 $this->icon_factory =
new I\Component\Symbol\Icon\Factory();
46 $this->counter_factory =
new I\Component\Counter\Factory();
48 $slate_factory =
new I\Component\MainControls\Slate\Factory(
50 $this->counter_factory,
58 $this->factory =
new I\Component\MainControls\Factory($sig_gen, $slate_factory);
59 $this->metabar = $this->factory->metabar();
64 $this->assertInstanceOf(
65 "ILIAS\\UI\\Component\\MainControls\\MetaBar",
72 $symbol = $this->icon_factory->custom(
'',
'');
73 return $this->button_factory->bulky($symbol,
'TestEntry',
'#');
81 $mock = $this->getMockBuilder(Legacy::class)
82 ->disableOriginalConstructor()
93 ->withAdditionalEntry(
'button', $button)
94 ->withAdditionalEntry(
'slate', $slate);
95 $entries = $mb->getEntries();
96 $this->assertEquals($button, $entries[
'button']);
97 $this->assertEquals($slate, $entries[
'slate']);
102 $this->expectException(InvalidArgumentException::class);
103 $this->metabar->withAdditionalEntry(
'test',
'wrong_param');
108 $this->assertInstanceOf(Signal::class, $this->metabar->getEntryClickSignal());
115 public C\MainControls\Factory $mc_factory;
118 public function button(): C\Button\Factory
122 public function mainControls(): C\MainControls\Factory
124 return $this->mc_factory;
126 public function symbol(): C\Symbol\Factory
128 return new I\Component\Symbol\Factory(
134 public function counter(): C\Counter\Factory
147 $html = str_replace([
"\n",
"\r",
"\t"],
"", $html);
148 $html = preg_replace(
'# {2,}#',
" ", $html);
149 $html = preg_replace(
'/<!--(.|\s)*?-->/',
'', $html);
150 $html = str_replace(
'> <',
'><', $html);
160 ->withAdditionalEntry(
'button', $button)
161 ->withAdditionalEntry(
'button2', $button);
163 $html = $r->render($mb);
166 <ul class="il-maincontrols-metabar" role="menubar" style="visibility: hidden" aria-label="metabar_aria_label" id="id_5" > 168 <button class="btn btn-bulky" data-action="#" id="id_1" role="menuitem" > 169 <img class="icon custom small" src="" alt=""/><span class="bulky-label">TestEntry</span> 173 <button class="btn btn-bulky" data-action="#" id="id_2" role="menuitem" > 174 <img class="icon custom small" src="" alt=""/><span class="bulky-label">TestEntry</span> 178 <button class="btn btn-bulky" id="id_3" role="menuitem" aria-haspopup="true" > 179 <span class="glyph" role="img"> 180 <span class="glyphicon glyphicon-option-vertical" aria-hidden="true"></span> 181 <span class="il-counter"><span class="badge badge-notify il-counter-status" style="display:none">0</span></span> 182 <span class="il-counter"><span class="badge badge-notify il-counter-novelty" style="display:none">0</span></span> 184 <span class="bulky-label">show_more</span> 186 <div class="il-metabar-slates"> 187 <div class="il-maincontrols-slate disengaged" id="id_4" role="menu"> 188 <div class="il-maincontrols-slate-content" data-replace-marker="content"></div> 208 ->withAdditionalEntry(
'bulky link', $bulky_link);
210 $this->assertTrue(
true);
getDefaultRenderer(JavaScriptBinding $js_binding=null, array $with_stub_renderings=[])
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Class ChatMainBarProvider .
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Provides common functionality for UI tests.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...