19 declare(strict_types=1);
    21 require_once(
"vendor/composer/vendor/autoload.php");
    22 require_once(__DIR__ . 
"/../../Base.php");
    35             public function breadcrumbs(array $crumbs): C\Breadcrumbs\Breadcrumbs
    37                 return new I\Component\Breadcrumbs\Breadcrumbs($crumbs);
    46         $this->assertInstanceOf(
"ILIAS\\UI\\Factory", 
$f);
    47         $this->assertInstanceOf(
    48             "ILIAS\\UI\\Component\\Breadcrumbs\\Breadcrumbs",
    49             $f->breadcrumbs(array())
    61         $c = 
$f->breadcrumbs($crumbs);
    62         $this->assertEquals($crumbs, 
$c->getItems());
    68         $crumb = 
new I\Component\Link\Standard(
"label2", 
'#');
    70         $c = 
$f->Breadcrumbs(array())
    71             ->withAppendedItem($crumb);
    72         $this->assertEquals(array($crumb), 
$c->getItems());
    78         $r = $this->getDefaultRenderer();
    84         $c = 
$f->Breadcrumbs($crumbs);
    86         $html = $this->normalizeHTML(
$r->render(
$c));
    87         $expected = 
'<nav aria-label="breadcrumbs_aria_label" class="breadcrumb-wrapper">'    88             . 
' <div class="breadcrumb" dir="rtl">'    89             . 
'         <span class="breadcrumb-crumb" dir="ltr">'    90             . 
'                 <a href="#">label2</a>'    92             . 
'     <span class="breadcrumb-separator" dir="rtl">␟</span>'    93             . 
'         <span class="breadcrumb-crumb" dir="ltr">'    94             . 
'                 <a href="#">label</a>'    99         $this->assertHTMLEquals($expected, $html);
   105         $r = $this->getDefaultRenderer();
   107         $label = 
"label without special characters";
   108         $label2 = 
"label with special characters + –...+}*@ç%#&/($";
   111             new I\Component\Link\Standard($label, 
'#'),
   112             new I\Component\Link\Standard($label2, 
'#')
   114         $c = 
$f->Breadcrumbs($crumbs);
   116         $html = $this->brutallyTrimHTML(
$r->render(
$c));
   117         $expected = 
'<nav aria-label="breadcrumbs_aria_label" class="breadcrumb-wrapper">'   118             . 
' <div class="breadcrumb" dir="rtl">'   119             . 
'             <span class="breadcrumb-crumb" dir="ltr">'   120             . 
'                     <a href="#">label with special characters + –...+}*@ç%#&/($</a>'   122             . 
'         <span class="breadcrumb-separator" dir="rtl">␟</span>'   123             . 
'             <span class="breadcrumb-crumb" dir="ltr">'   124             . 
'                     <a href="#">label without special characters</a>'   129         $this->assertEquals($this->brutallyTrimHTML($expected), $html);
 
Tests for the Breadcrumbs-component. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
testRenderingWithSpecialCharacters()
 
testImplementsFactoryInterface()
 
breadcrumbs()
 description: > Example showing how to construct Breadcrumbs with an array of Links and extending the...