19declare(strict_types=1);
21require_once(
"libs/composer/vendor/autoload.php");
22require_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';
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()
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
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);
Builds a Color from either hex- or rgb values.
Provides common functionality for UI tests.
brutallyTrimHTML(string $html)
A more radical version of normalizeHTML.
getDefaultRenderer(JavaScriptBinding $js_binding=null, array $with_stub_renderings=[])
Tests for the Standard Page.
testRenderingWithCrumbs()
testRenderingWithMetaData()
testRenderingWithRtlLanguage()
This describes the MainBar.
This describes the MetaBar.
This describes the Legacy-Slate.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...