19 declare(strict_types=1);
21 require_once(
"libs/composer/vendor/autoload.php");
22 require_once(__DIR__ .
"/../../../Base.php");
61 $this->metabar = $this->createMock(MetaBar::class);
62 $this->metabar->method(
"getCanonicalName")->willReturn(
"MetaBar Stub");
63 $this->
mainbar = $this->createMock(MainBar::class);
64 $this->
mainbar->method(
"getCanonicalName")->willReturn(
"MainBar Stub");
65 $this->crumbs = $this->createMock(Breadcrumbs::class);
66 $this->crumbs->method(
"getCanonicalName")->willReturn(
"Breadcrumbs Stub");
67 $this->logo = $this->createMock(Image::class);
68 $this->logo->method(
"getCanonicalName")->willReturn(
"Logo Stub");
69 $this->responsive_logo = $this->createMock(Image::class);
70 $this->responsive_logo->method(
"getCanonicalName")->willReturn(
"Responsive Logo Stub");
71 $this->overlay = $this->createMock(Container::class);
72 $this->overlay->method(
"getCanonicalName")->willReturn(
"Overlay Stub");
73 $this->contents = array(
new Legacy(
'some content', $sig_gen));
74 $this->title =
'pagetitle';
76 $this->factory =
new Page\Factory();
77 $this->stdpage = $this->factory->standard(
83 $this->responsive_logo,
93 $this->assertInstanceOf(
94 "ILIAS\\UI\\Component\\Layout\\Page\\Standard",
103 $this->stdpage->getContent()
111 $this->stdpage->getMetabar()
119 $this->stdpage->getMainbar()
127 $this->stdpage->getBreadcrumbs()
135 $this->stdpage->getLogo()
141 $this->assertTrue($this->stdpage->hasLogo());
147 $this->responsive_logo,
148 $this->stdpage->getResponsiveLogo()
154 $this->assertTrue($this->stdpage->hasResponsiveLogo());
159 $this->assertEquals(
"favicon.ico", $this->stdpage->getFaviconPath());
162 $this->stdpage->withFaviconPath(
"test")->getFaviconPath()
170 $this->stdpage->getOverlay()
176 $this->expectException(TypeError::class);
177 $this->stdpage = $this->factory->standard(
180 'string is not allowed here',
190 $this->stdpage->getTitle()
196 $title =
'some title';
199 $this->stdpage->withTitle($title)->getTitle()
204 $title =
'some short title';
207 $this->stdpage->withShortTitle($title)->getShortTitle()
212 $title =
'some view title';
215 $this->stdpage->withViewTitle($title)->getViewTitle()
221 $this->assertEquals(
"ltr", $this->stdpage->getTextDirection());
225 ->withTextDirection($this->stdpage::RTL)
232 $meta_datum_key =
'meta_datum_key';
233 $meta_datum_value =
'meta_datum_value';
234 $meta_data = [$meta_datum_key => $meta_datum_value];
237 $this->stdpage->withAdditionalMetaDatum($meta_datum_key, $meta_datum_value)->getMetaData()
243 $this->stdpage = $this->stdpage
245 ->withViewTitle(
"View Title")
246 ->withShortTitle(
"Short Title");
252 <html lang="en" dir="ltr"> 255 <meta charset="utf-8" /> 256 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 257 <meta name="viewport" content="width=device-width, initial-scale=1" /> 258 <title>View Title: Short Title</title> 259 <link rel="icon" href="favicon.ico" type="image/x-icon"> 264 <div class="il-page-overlay">Overlay Stub</div> 265 <div class="il-layout-page"> 267 <div class="header-inner"> 268 <div class="il-logo"><span class="hidden-xs">Logo Stub</span><span class="visible-xs">Responsive Logo Stub</span> 269 <div class="il-pagetitle">Title</div> 273 <div class="il-system-infos"></div> 274 <div class="nav il-maincontrols">MainBar Stub</div> 275 <main class="il-layout-page-content">some content</main> 277 <script>il.Util.addOnLoad(function() {});</script> 281 $this->assertEquals($exptected, $html);
286 $this->stdpage = $this->stdpage->withTextDirection($this->stdpage::RTL);
292 <html lang="en" dir="rtl"> 295 <meta charset="utf-8" /> 296 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 297 <meta name="viewport" content="width=device-width, initial-scale=1" /> 299 <link rel="icon" href="favicon.ico" type="image/x-icon"> 304 <div class="il-page-overlay">Overlay Stub</div> 305 <div class="il-layout-page"> 307 <div class="header-inner"> 308 <div class="il-logo"><span class="hidden-xs">Logo Stub</span><span class="visible-xs">Responsive Logo Stub</span> 309 <div class="il-pagetitle">pagetitle</div> 313 <div class="il-system-infos"></div> 314 <div class="nav il-maincontrols">MainBar Stub</div> 315 <main class="il-layout-page-content">some content</main> 317 <script>il.Util.addOnLoad(function() {});</script> 321 $this->assertEquals($exptected, $html);
326 $this->stdpage = $this->stdpage->withAdditionalMetaDatum(
'meta_datum_key_1',
'meta_datum_value_1');
327 $this->stdpage = $this->stdpage->withAdditionalMetaDatum(
'meta_datum_key_2',
'meta_datum_value_2');
333 <html lang="en" dir="ltr"> 336 <meta charset="utf-8" /> 337 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 338 <meta name="viewport" content="width=device-width, initial-scale=1" /> 340 <link rel="icon" href="favicon.ico" type="image/x-icon"> 342 <meta name="meta_datum_key_1" content="meta_datum_value_1" /> 343 <meta name="meta_datum_key_2" content="meta_datum_value_2" /> 347 <div class="il-page-overlay">Overlay Stub</div> 348 <div class="il-layout-page"> 350 <div class="header-inner"> 351 <div class="il-logo"><span class="hidden-xs">Logo Stub</span><span class="visible-xs">Responsive Logo Stub</span> 352 <div class="il-pagetitle">pagetitle</div> 356 <div class="il-system-infos"></div> 357 <div class="nav il-maincontrols">MainBar Stub</div> 358 <main class="il-layout-page-content">some content</main> 360 <script>il.Util.addOnLoad(function() {});</script> 364 $this->assertEquals($expected, $html);
375 public function dropdown():
Factory 384 $crumbs =
new Crumbs([
385 new CrumbEntry(
"label1",
'#'),
386 new CrumbEntry(
"label2",
'#'),
387 new CrumbEntry(
"label3",
'#')
391 $stdpage = $this->factory->standard(
397 $this->responsive_logo,
407 <html lang="en" dir="ltr"> 410 <meta charset="utf-8" /> 411 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> 412 <meta name="viewport" content="width=device-width, initial-scale=1" /> 414 <link rel="icon" href="favicon.ico" type="image/x-icon"> 419 <div class="il-page-overlay">Overlay Stub</div> 420 <div class="il-layout-page"> 422 <div class="header-inner"> 423 <div class="il-logo"><span class="hidden-xs">Logo Stub</span><span class="visible-xs">Responsive Logo Stub</span> 424 <div class="il-pagetitle">pagetitle</div> 426 <nav class="il-header-locator"> 427 <div class="dropdown"><button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown" id="id_3" aria-haspopup="true" aria-expanded="false" aria-controls="id_3_menu">label3<span class="caret"></span></button> 428 <ul id="id_3_menu" class="dropdown-menu"> 429 <li><button class="btn btn-link" data-action="#" id="id_1">label2</button></li> 430 <li><button class="btn btn-link" data-action="#" id="id_2">label1</button></li> 436 <div class="il-system-infos"></div> 437 <div class="nav il-maincontrols">MainBar Stub</div> 438 <main class="il-layout-page-content"> 439 <div class="breadcrumbs"> 440 <nav aria-label="breadcrumbs_aria_label" class="breadcrumb_wrapper"> 441 <div class="breadcrumb"><span class="crumb"><a href="#">label1</a></span><span class="crumb"><a href="#">label2</a></span><span class="crumb"><a href="#">label3</a></span></div> 446 <script>il.Util.addOnLoad(function() {});</script> 450 $this->assertEquals($exptected, $html);
This describes the Legacy-Slate.
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...
This describes the MainBar.
brutallyTrimHTML(string $html)
A more radical version of normalizeHTML.
testRenderingWithMetaData()
Tests for the Standard Page.
Provides common functionality for UI tests.
This describes the MetaBar.
testRenderingWithCrumbs()
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
testRenderingWithRtlLanguage()