ILIAS  release_10 Revision v10.1-43-ga1241a92c2f
StandardFilterTest Class Reference

Test on standard filter implementation. More...

+ Inheritance diagram for StandardFilterTest:
+ Collaboration diagram for StandardFilterTest:

Public Member Functions

 getUIFactory ()
 
 testRenderActivatedCollapsed ()
 
 testRenderDeactivatedCollapsed ()
 
 testRenderActivatedExpanded ()
 
 testRenderDeactivatedExpanded ()
 
 testDedicatedNames ()
 

Protected Member Functions

 buildFactory ()
 
 buildInputFactory ()
 
 buildButtonFactory ()
 
 buildSymbolFactory ()
 
 buildPopoverFactory ()
 
 buildLegacyFactory ()
 
 buildListingFactory ()
 

Detailed Description

Test on standard filter implementation.

Definition at line 80 of file StandardFilterTest.php.

Member Function Documentation

◆ buildButtonFactory()

StandardFilterTest::buildButtonFactory ( )
protected

Definition at line 103 of file StandardFilterTest.php.

103  : I\Button\Factory
104  {
105  return new I\Button\Factory();
106  }

◆ buildFactory()

StandardFilterTest::buildFactory ( )
protected

Definition at line 82 of file StandardFilterTest.php.

82  : I\Input\Container\Filter\Factory
83  {
84  return new I\Input\Container\Filter\Factory(
85  new I\SignalGenerator(),
86  $this->buildInputFactory()
87  );
88  }

◆ buildInputFactory()

StandardFilterTest::buildInputFactory ( )
protected

Definition at line 90 of file StandardFilterTest.php.

90  : I\Input\Field\Factory
91  {
92  $df = new Data\Factory();
93  $language = $this->createMock(ILIAS\Language\Language::class);
94  return new I\Input\Field\Factory(
95  $this->createMock(\ILIAS\UI\Implementation\Component\Input\UploadLimitResolver::class),
96  new I\SignalGenerator(),
97  $df,
98  new ILIAS\Refinery\Factory($df, $language),
99  $language
100  );
101  }
Interface Observer Contains several chained tasks and infos about them.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Builds data types.
Definition: Factory.php:35

◆ buildLegacyFactory()

StandardFilterTest::buildLegacyFactory ( )
protected

Definition at line 122 of file StandardFilterTest.php.

122  : I\Legacy\Factory
123  {
124  return new I\Legacy\Factory(new I\SignalGenerator());
125  }

◆ buildListingFactory()

StandardFilterTest::buildListingFactory ( )
protected

Definition at line 127 of file StandardFilterTest.php.

127  : I\Listing\Factory
128  {
129  return new I\Listing\Factory();
130  }

◆ buildPopoverFactory()

StandardFilterTest::buildPopoverFactory ( )
protected

Definition at line 117 of file StandardFilterTest.php.

117  : I\Popover\Factory
118  {
119  return new I\Popover\Factory(new I\SignalGenerator());
120  }

◆ buildSymbolFactory()

StandardFilterTest::buildSymbolFactory ( )
protected

Definition at line 108 of file StandardFilterTest.php.

108  : I\Symbol\Factory
109  {
110  return new I\Symbol\Factory(
111  new I\Symbol\Icon\Factory(),
112  new I\Symbol\Glyph\Factory(),
113  new I\Symbol\Avatar\Factory()
114  );
115  }
Builds data types.
Definition: Factory.php:35

◆ getUIFactory()

StandardFilterTest::getUIFactory ( )

Definition at line 132 of file StandardFilterTest.php.

◆ testDedicatedNames()

StandardFilterTest::testDedicatedNames ( )

Definition at line 695 of file StandardFilterTest.php.

References Vendor\Package\$f, and ILIAS\UI\Implementation\Component\Input\$inputs.

695  : void
696  {
697  $f = $this->buildFactory();
698  $if = $this->buildInputFactory();
699  $inputs = [
700  $if->text("Title")->withDedicatedName('title'),
701  $if->select("Selection", ["one" => "One", "two" => "Two", "three" => "Three"])->withDedicatedName('selection'),
702  $if->multiSelect("Multi Selection", ["one" => "Num One", "two" => "Num Two", "three" => "Num Three"])
703  ];
704  $filter = $f->standard(
705  "#",
706  "#",
707  "#",
708  "#",
709  "#",
710  "#",
711  $inputs,
712  [true, true, true],
713  true,
714  true
715  );
716 
717  $inputs = $filter->getInputs();
718  $this->assertEquals('filter_input_0/title', $inputs[0]->getName());
719  $this->assertEquals('filter_input_0/selection', $inputs[1]->getName());
720  $this->assertEquals('filter_input_0/filter_input_1', $inputs[2]->getName());
721  }

◆ testRenderActivatedCollapsed()

StandardFilterTest::testRenderActivatedCollapsed ( )

Definition at line 143 of file StandardFilterTest.php.

References Vendor\Package\$f, ILIAS\UI\Implementation\Component\Input\$inputs, $r, ILIAS\UI\examples\Symbol\Glyph\Apply\apply(), WithNoUIFactories\button(), ILIAS\UI\examples\Symbol\Glyph\Collapse\collapse(), ILIAS\UI\examples\Symbol\Glyph\Expand\expand(), ILIAS\Repository\filter(), ILIAS\Repository\form(), and NoUIFactory\input().

143  : void
144  {
145  $f = $this->buildFactory();
146  $if = $this->buildInputFactory();
147  $inputs = [
148  $if->text("Title"),
149  $if->select("Selection", ["one" => "One", "two" => "Two", "three" => "Three"]),
150  $if->multiSelect("Multi Selection", ["one" => "Num One", "two" => "Num Two", "three" => "Num Three"])
151  ];
152  $inputs_rendered = [true, false, true];
153 
154  $filter = $f->standard(
155  "#",
156  "#",
157  "#",
158  "#",
159  "#",
160  "#",
161  $inputs,
162  $inputs_rendered,
163  true,
164  false
165  );
166 
167  $r = $this->getDefaultRenderer();
168  $html = $r->render($filter);
169 
170  $expected = <<<EOT
171 <div class="il-filter enabled" id="id_1">
172  <form class="c-form il-standard-form form-horizontal" enctype="multipart/form-data" method="get" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#" data-cmd-toggleOff="#">
173  <div class="il-filter-bar">
174  <div class="il-filter-bar-opener">
175  <button type="button" aria-expanded="false" aria-controls="active_inputs_id_1 section_inputs_id_1" id="opener_id_1">
176  <span>
177  <span data-collapse-glyph-visibility="0">
178  <a class="glyph" aria-label="collapse_content">
179  <span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span>
180  </a>
181  </span>
182  <span data-expand-glyph-visibility="1">
183  <a class="glyph" aria-label="expand_content">
184  <span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span>
185  </a>
186  </span> filter
187  </span>
188  </button>
189  </div>
190  <div class="il-filter-bar-toggle">
191  <div class="il-toggle-item">
192  <button class="il-toggle-button on" id="id_4" aria-pressed="false">
193  <span class="il-toggle-label-on">toggle_on</span>
194  <span class="il-toggle-label-off">toggle_off</span>
195  <span class="il-toggle-switch"></span>
196  </button>
197  </div>
198  </div>
199  </div>
200  <div class="il-filter-inputs-active clearfix" id="active_inputs_id_1" aria-labelledby="opener_id_1" data-active-inputs-expanded="1">
201  <span id="1"></span>
202  <span id="2"></span>
203  <span id="3"></span>
204  </div>
205  <div class="il-filter-input-section row" id="section_inputs_id_1" aria-labelledby="opener_id_1" data-section-inputs-expanded="0">
206  <div class="col-md-6 col-lg-4 il-popover-container">
207  <div class="input-group">
208  <label for="id_5" class="input-group-addon leftaddon">Title</label>
209  <input id="id_5" type="text" name="filter_input_0/filter_input_1" class="c-field-text" />
210  <span class="input-group-addon rightaddon">
211  <a class="glyph" href="" aria-label="remove" id="id_6">
212  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
213  </a>
214  </span>
215  </div>
216  </div>
217  <div class="col-md-6 col-lg-4 il-popover-container">
218  <div class="input-group">
219  <label for="id_7" class="input-group-addon leftaddon">Selection</label>
220  <select id="id_7" name="filter_input_0/filter_input_2">
221  <option selected="selected" value="">-</option>
222  <option value="one">One</option>
223  <option value="two">Two</option>
224  <option value="three">Three</option>
225  </select>
226  <span class="input-group-addon rightaddon">
227  <a class="glyph" href="" aria-label="remove" id="id_8">
228  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
229  </a>
230  </span>
231  </div>
232  </div>
233  <div class="col-md-6 col-lg-4 il-popover-container">
234  <div class="input-group">
235  <label class="input-group-addon leftaddon">Multi Selection</label>
236  <span role="button" tabindex="0" class="form-control il-filter-field" id="id_11" data-placement="bottom"></span>
237  <div class="il-standard-popover-content" style="display:none;" id="id_9"></div>
238  <span class="input-group-addon rightaddon">
239  <a class="glyph" href="" aria-label="remove" id="id_12">
240  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
241  </a>
242  </span>
243  </div>
244  </div>
245  <div class="col-md-6 col-lg-4 il-popover-container">
246  <div class="input-group">
247  <button class="btn btn-bulky" id="id_18">
248  <span class="glyph" aria-label="add" role="img">
249  <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
250  </span>
251  <span class="bulky-label"></span>
252  </button>
253  </div>
254  <div class="il-standard-popover-content" style="display:none;" id="id_16"></div>
255  </div>
256  <div class="il-filter-controls">
257  <button class="btn btn-bulky" data-action="" id="id_2">
258  <span class="glyph" role="img">
259  <span class="glyphicon glyphicon-apply" aria-hidden="true"></span>
260  </span>
261  <span class="bulky-label">apply</span>
262  </button>
263  <button class="btn btn-bulky" data-action="#" id="id_3">
264  <span class="glyph" role="img">
265  <span class="glyphicon glyphicon-reset" aria-hidden="true"></span>
266  </span>
267  <span class="bulky-label">reset</span>
268  </button>
269  </div>
270  </div>
271  <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
272  <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
273  <input class="il-filter-field-status" type="hidden" name="__filter_status_2" value="1" />
274  </form>
275 </div>
276 EOT;
277 
278  $this->assertHTMLEquals($this->brutallyTrimHTML($expected), $this->brutallyTrimHTML($html));
279  }
apply()
description: > Example for rendring a apply glyph.
Definition: apply.php:25
button(string $caption, string $cmd)
Title class.
Definition: Title.php:26
collapse()
description: > Example for rendering a collapse glyph.
Definition: collapse.php:27
form( $class_path, string $cmd, string $submit_caption="")
expand()
description: > Example for rendering an expand glyph.
Definition: expand.php:25
filter(string $filter_id, $class_path, string $cmd, bool $activated=true, bool $expanded=true)
$r
+ Here is the call graph for this function:

◆ testRenderActivatedExpanded()

StandardFilterTest::testRenderActivatedExpanded ( )

Definition at line 419 of file StandardFilterTest.php.

References Vendor\Package\$f, ILIAS\UI\Implementation\Component\Input\$inputs, $r, ILIAS\UI\examples\Symbol\Glyph\Apply\apply(), WithNoUIFactories\button(), ILIAS\UI\examples\Symbol\Glyph\Collapse\collapse(), ILIAS\UI\examples\Symbol\Glyph\Expand\expand(), ILIAS\Repository\filter(), ILIAS\Repository\form(), and NoUIFactory\input().

419  : void
420  {
421  $f = $this->buildFactory();
422  $if = $this->buildInputFactory();
423  $inputs = [
424  $if->text("Title"),
425  $if->select("Selection", ["one" => "One", "two" => "Two", "three" => "Three"]),
426  $if->multiSelect("Multi Selection", ["one" => "Num One", "two" => "Num Two", "three" => "Num Three"])
427  ];
428  $inputs_rendered = [true, false, true];
429 
430  $filter = $f->standard(
431  "#",
432  "#",
433  "#",
434  "#",
435  "#",
436  "#",
437  $inputs,
438  $inputs_rendered,
439  true,
440  true
441  );
442 
443  $r = $this->getDefaultRenderer();
444  $html = $r->render($filter);
445 
446  $expected = <<<EOT
447 <div class="il-filter enabled" id="id_1">
448  <form class="c-form il-standard-form form-horizontal" enctype="multipart/form-data" method="get" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#" data-cmd-toggleOff="#">
449  <div class="il-filter-bar">
450  <div class="il-filter-bar-opener">
451  <button type="button" aria-expanded="true" aria-controls="active_inputs_id_1 section_inputs_id_1" id="opener_id_1">
452  <span>
453  <span data-collapse-glyph-visibility="1">
454  <a class="glyph" aria-label="collapse_content">
455  <span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span>
456  </a>
457  </span>
458  <span data-expand-glyph-visibility="0">
459  <a class="glyph" aria-label="expand_content">
460  <span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span>
461  </a>
462  </span> filter
463  </span>
464  </button>
465  </div>
466  <div class="il-filter-bar-toggle">
467  <div class="il-toggle-item">
468  <button class="il-toggle-button on" id="id_4" aria-pressed="false">
469  <span class="il-toggle-label-on">toggle_on</span>
470  <span class="il-toggle-label-off">toggle_off</span>
471  <span class="il-toggle-switch"></span>
472  </button>
473  </div>
474  </div>
475  </div>
476  <div class="il-filter-inputs-active clearfix" id="active_inputs_id_1" aria-labelledby="opener_id_1" data-active-inputs-expanded="0">
477  <span id="1"></span>
478  <span id="2"></span>
479  <span id="3"></span>
480  </div>
481  <div class="il-filter-input-section row" id="section_inputs_id_1" aria-labelledby="opener_id_1" data-section-inputs-expanded="1">
482  <div class="col-md-6 col-lg-4 il-popover-container">
483  <div class="input-group">
484  <label for="id_5" class="input-group-addon leftaddon">Title</label>
485  <input id="id_5" type="text" name="filter_input_0/filter_input_1" class="c-field-text" />
486  <span class="input-group-addon rightaddon">
487  <a class="glyph" href="" aria-label="remove" id="id_6">
488  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
489  </a>
490  </span>
491  </div>
492  </div>
493  <div class="col-md-6 col-lg-4 il-popover-container">
494  <div class="input-group">
495  <label for="id_7" class="input-group-addon leftaddon">Selection</label>
496  <select id="id_7" name="filter_input_0/filter_input_2">
497  <option selected="selected" value="">-</option>
498  <option value="one">One</option>
499  <option value="two">Two</option>
500  <option value="three">Three</option>
501  </select>
502  <span class="input-group-addon rightaddon">
503  <a class="glyph" href="" aria-label="remove" id="id_8">
504  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
505  </a>
506  </span>
507  </div>
508  </div>
509  <div class="col-md-6 col-lg-4 il-popover-container">
510  <div class="input-group">
511  <label class="input-group-addon leftaddon">Multi Selection</label>
512  <span role="button" tabindex="0" class="form-control il-filter-field" id="id_11" data-placement="bottom"></span>
513  <div class="il-standard-popover-content" style="display:none;" id="id_9"></div>
514  <span class="input-group-addon rightaddon">
515  <a class="glyph" href="" aria-label="remove" id="id_12">
516  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
517  </a>
518  </span>
519  </div>
520  </div>
521  <div class="col-md-6 col-lg-4 il-popover-container">
522  <div class="input-group">
523  <button class="btn btn-bulky" id="id_18">
524  <span class="glyph" aria-label="add" role="img">
525  <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
526  </span>
527  <span class="bulky-label"></span>
528  </button>
529  </div>
530  <div class="il-standard-popover-content" style="display:none;" id="id_16"></div>
531  </div>
532  <div class="il-filter-controls">
533  <button class="btn btn-bulky" data-action="" id="id_2">
534  <span class="glyph" role="img">
535  <span class="glyphicon glyphicon-apply" aria-hidden="true"></span>
536  </span>
537  <span class="bulky-label">apply</span>
538  </button>
539  <button class="btn btn-bulky" data-action="#" id="id_3">
540  <span class="glyph" role="img">
541  <span class="glyphicon glyphicon-reset" aria-hidden="true"></span>
542  </span>
543  <span class="bulky-label">reset</span>
544  </button>
545  </div>
546  </div>
547  <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
548  <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
549  <input class="il-filter-field-status" type="hidden" name="__filter_status_2" value="1" />
550  </form>
551 </div>
552 EOT;
553 
554  $this->assertHTMLEquals($this->brutallyTrimHTML($expected), $this->brutallyTrimHTML($html));
555  }
apply()
description: > Example for rendring a apply glyph.
Definition: apply.php:25
button(string $caption, string $cmd)
Title class.
Definition: Title.php:26
collapse()
description: > Example for rendering a collapse glyph.
Definition: collapse.php:27
form( $class_path, string $cmd, string $submit_caption="")
expand()
description: > Example for rendering an expand glyph.
Definition: expand.php:25
filter(string $filter_id, $class_path, string $cmd, bool $activated=true, bool $expanded=true)
$r
+ Here is the call graph for this function:

◆ testRenderDeactivatedCollapsed()

StandardFilterTest::testRenderDeactivatedCollapsed ( )

Definition at line 281 of file StandardFilterTest.php.

References Vendor\Package\$f, ILIAS\UI\Implementation\Component\Input\$inputs, $r, ILIAS\UI\examples\Symbol\Glyph\Apply\apply(), WithNoUIFactories\button(), ILIAS\UI\examples\Symbol\Glyph\Collapse\collapse(), ILIAS\UI\examples\Symbol\Glyph\Expand\expand(), ILIAS\Repository\filter(), ILIAS\Repository\form(), and NoUIFactory\input().

281  : void
282  {
283  $f = $this->buildFactory();
284  $if = $this->buildInputFactory();
285  $inputs = [
286  $if->text("Title"),
287  $if->select("Selection", ["one" => "One", "two" => "Two", "three" => "Three"]),
288  $if->multiSelect("Multi Selection", ["one" => "Num One", "two" => "Num Two", "three" => "Num Three"])
289  ];
290  $inputs_rendered = [true, false, true];
291 
292  $filter = $f->standard(
293  "#",
294  "#",
295  "#",
296  "#",
297  "#",
298  "#",
299  $inputs,
300  $inputs_rendered,
301  false,
302  false
303  );
304 
305  $r = $this->getDefaultRenderer();
306  $html = $r->render($filter);
307 
308  $expected = <<<EOT
309 <div class="il-filter disabled" id="id_1">
310  <form class="c-form il-standard-form form-horizontal" enctype="multipart/form-data" method="get" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#" data-cmd-toggleOff="#">
311  <div class="il-filter-bar">
312  <div class="il-filter-bar-opener">
313  <button type="button" aria-expanded="false" aria-controls="active_inputs_id_1 section_inputs_id_1" id="opener_id_1">
314  <span>
315  <span data-collapse-glyph-visibility="0">
316  <a class="glyph" aria-label="collapse_content">
317  <span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span>
318  </a>
319  </span>
320  <span data-expand-glyph-visibility="1">
321  <a class="glyph" aria-label="expand_content">
322  <span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span>
323  </a>
324  </span> filter
325  </span>
326  </button>
327  </div>
328  <div class="il-filter-bar-toggle">
329  <div class="il-toggle-item">
330  <button class="il-toggle-button off" id="id_4" aria-pressed="false">
331  <span class="il-toggle-label-on">toggle_on</span>
332  <span class="il-toggle-label-off">toggle_off</span>
333  <span class="il-toggle-switch"></span>
334  </button>
335  </div>
336  </div>
337  </div>
338  <div class="il-filter-inputs-active clearfix" id="active_inputs_id_1" aria-labelledby="opener_id_1" data-active-inputs-expanded="1">
339  <span id="1"></span>
340  <span id="2"></span>
341  <span id="3"></span>
342  </div>
343  <div class="il-filter-input-section row" id="section_inputs_id_1" aria-labelledby="opener_id_1" data-section-inputs-expanded="0">
344  <div class="col-md-6 col-lg-4 il-popover-container">
345  <div class="input-group">
346  <label for="id_5" class="input-group-addon leftaddon">Title</label>
347  <input id="id_5" type="text" name="filter_input_0/filter_input_1" class="c-field-text" />
348  <span class="input-group-addon rightaddon">
349  <a class="glyph" href="" aria-label="remove" id="id_6">
350  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
351  </a>
352  </span>
353  </div>
354  </div>
355  <div class="col-md-6 col-lg-4 il-popover-container">
356  <div class="input-group">
357  <label for="id_7" class="input-group-addon leftaddon">Selection</label>
358  <select id="id_7" name="filter_input_0/filter_input_2">
359  <option selected="selected" value="">-</option>
360  <option value="one">One</option>
361  <option value="two">Two</option>
362  <option value="three">Three</option>
363  </select>
364  <span class="input-group-addon rightaddon">
365  <a class="glyph" href="" aria-label="remove" id="id_8">
366  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
367  </a>
368  </span>
369  </div>
370  </div>
371  <div class="col-md-6 col-lg-4 il-popover-container">
372  <div class="input-group">
373  <label class="input-group-addon leftaddon">Multi Selection</label>
374  <span role="button" tabindex="0" class="form-control il-filter-field" id="id_11" data-placement="bottom"></span>
375  <div class="il-standard-popover-content" style="display:none;" id="id_9"></div>
376  <span class="input-group-addon rightaddon">
377  <a class="glyph" href="" aria-label="remove" id="id_12">
378  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
379  </a>
380  </span>
381  </div>
382  </div>
383  <div class="col-md-6 col-lg-4 il-popover-container">
384  <div class="input-group">
385  <button class="btn btn-bulky" id="id_18">
386  <span class="glyph" aria-label="add" role="img">
387  <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
388  </span>
389  <span class="bulky-label"></span>
390  </button>
391  </div>
392  <div class="il-standard-popover-content" style="display:none;" id="id_16"></div>
393  </div>
394  <div class="il-filter-controls">
395  <button class="btn btn-bulky" data-action="" id="id_2">
396  <span class="glyph" role="img">
397  <span class="glyphicon glyphicon-apply" aria-hidden="true"></span>
398  </span>
399  <span class="bulky-label">apply</span>
400  </button>
401  <button class="btn btn-bulky" data-action="#" id="id_3">
402  <span class="glyph" role="img">
403  <span class="glyphicon glyphicon-reset" aria-hidden="true"></span>
404  </span>
405  <span class="bulky-label">reset</span>
406  </button>
407  </div>
408  </div>
409  <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
410  <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
411  <input class="il-filter-field-status" type="hidden" name="__filter_status_2" value="1" />
412  </form>
413 </div>
414 EOT;
415 
416  $this->assertHTMLEquals($this->brutallyTrimHTML($expected), $this->brutallyTrimHTML($html));
417  }
apply()
description: > Example for rendring a apply glyph.
Definition: apply.php:25
button(string $caption, string $cmd)
Title class.
Definition: Title.php:26
collapse()
description: > Example for rendering a collapse glyph.
Definition: collapse.php:27
form( $class_path, string $cmd, string $submit_caption="")
expand()
description: > Example for rendering an expand glyph.
Definition: expand.php:25
filter(string $filter_id, $class_path, string $cmd, bool $activated=true, bool $expanded=true)
$r
+ Here is the call graph for this function:

◆ testRenderDeactivatedExpanded()

StandardFilterTest::testRenderDeactivatedExpanded ( )

Definition at line 557 of file StandardFilterTest.php.

References Vendor\Package\$f, ILIAS\UI\Implementation\Component\Input\$inputs, $r, ILIAS\UI\examples\Symbol\Glyph\Apply\apply(), WithNoUIFactories\button(), ILIAS\UI\examples\Symbol\Glyph\Collapse\collapse(), ILIAS\UI\examples\Symbol\Glyph\Expand\expand(), ILIAS\Repository\filter(), ILIAS\Repository\form(), and NoUIFactory\input().

557  : void
558  {
559  $f = $this->buildFactory();
560  $if = $this->buildInputFactory();
561  $inputs = [
562  $if->text("Title"),
563  $if->select("Selection", ["one" => "One", "two" => "Two", "three" => "Three"]),
564  $if->multiSelect("Multi Selection", ["one" => "Num One", "two" => "Num Two", "three" => "Num Three"])
565  ];
566  $inputs_rendered = [true, false, true];
567 
568  $filter = $f->standard(
569  "#",
570  "#",
571  "#",
572  "#",
573  "#",
574  "#",
575  $inputs,
576  $inputs_rendered,
577  false,
578  true
579  );
580 
581  $r = $this->getDefaultRenderer();
582  $html = $r->render($filter);
583 
584  $expected = <<<EOT
585 <div class="il-filter disabled" id="id_1">
586  <form class="c-form il-standard-form form-horizontal" enctype="multipart/form-data" method="get" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#" data-cmd-toggleOff="#">
587  <div class="il-filter-bar">
588  <div class="il-filter-bar-opener">
589  <button type="button" aria-expanded="true" aria-controls="active_inputs_id_1 section_inputs_id_1" id="opener_id_1">
590  <span>
591  <span data-collapse-glyph-visibility="1">
592  <a class="glyph" aria-label="collapse_content">
593  <span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span>
594  </a>
595  </span>
596  <span data-expand-glyph-visibility="0">
597  <a class="glyph" aria-label="expand_content">
598  <span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span>
599  </a>
600  </span> filter
601  </span>
602  </button>
603  </div>
604  <div class="il-filter-bar-toggle">
605  <div class="il-toggle-item">
606  <button class="il-toggle-button off" id="id_4" aria-pressed="false">
607  <span class="il-toggle-label-on">toggle_on</span>
608  <span class="il-toggle-label-off">toggle_off</span>
609  <span class="il-toggle-switch"></span>
610  </button>
611  </div>
612  </div>
613  </div>
614  <div class="il-filter-inputs-active clearfix" id="active_inputs_id_1" aria-labelledby="opener_id_1" data-active-inputs-expanded="0">
615  <span id="1"></span>
616  <span id="2"></span>
617  <span id="3"></span>
618  </div>
619  <div class="il-filter-input-section row" id="section_inputs_id_1" aria-labelledby="opener_id_1" data-section-inputs-expanded="1">
620  <div class="col-md-6 col-lg-4 il-popover-container">
621  <div class="input-group">
622  <label for="id_5" class="input-group-addon leftaddon">Title</label>
623  <input id="id_5" type="text" name="filter_input_0/filter_input_1" class="c-field-text" />
624  <span class="input-group-addon rightaddon">
625  <a class="glyph" href="" aria-label="remove" id="id_6">
626  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
627  </a>
628  </span>
629  </div>
630  </div>
631  <div class="col-md-6 col-lg-4 il-popover-container">
632  <div class="input-group">
633  <label for="id_7" class="input-group-addon leftaddon">Selection</label>
634  <select id="id_7" name="filter_input_0/filter_input_2">
635  <option selected="selected" value="">-</option>
636  <option value="one">One</option>
637  <option value="two">Two</option>
638  <option value="three">Three</option>
639  </select>
640  <span class="input-group-addon rightaddon">
641  <a class="glyph" href="" aria-label="remove" id="id_8">
642  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
643  </a>
644  </span>
645  </div>
646  </div>
647  <div class="col-md-6 col-lg-4 il-popover-container">
648  <div class="input-group">
649  <label class="input-group-addon leftaddon">Multi Selection</label>
650  <span role="button" tabindex="0" class="form-control il-filter-field" id="id_11" data-placement="bottom"></span>
651  <div class="il-standard-popover-content" style="display:none;" id="id_9"></div>
652  <span class="input-group-addon rightaddon">
653  <a class="glyph" href="" aria-label="remove" id="id_12">
654  <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
655  </a>
656  </span>
657  </div>
658  </div>
659  <div class="col-md-6 col-lg-4 il-popover-container">
660  <div class="input-group">
661  <button class="btn btn-bulky" id="id_18">
662  <span class="glyph" aria-label="add" role="img">
663  <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
664  </span>
665  <span class="bulky-label"></span>
666  </button>
667  </div>
668  <div class="il-standard-popover-content" style="display:none;" id="id_16"></div>
669  </div>
670  <div class="il-filter-controls">
671  <button class="btn btn-bulky" data-action="" id="id_2">
672  <span class="glyph" role="img">
673  <span class="glyphicon glyphicon-apply" aria-hidden="true"></span>
674  </span>
675  <span class="bulky-label">apply</span>
676  </button>
677  <button class="btn btn-bulky" data-action="#" id="id_3">
678  <span class="glyph" role="img">
679  <span class="glyphicon glyphicon-reset" aria-hidden="true"></span>
680  </span>
681  <span class="bulky-label">reset</span>
682  </button>
683  </div>
684  </div>
685  <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
686  <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
687  <input class="il-filter-field-status" type="hidden" name="__filter_status_2" value="1" />
688  </form>
689 </div>
690 EOT;
691 
692  $this->assertHTMLEquals($this->brutallyTrimHTML($expected), $this->brutallyTrimHTML($html));
693  }
apply()
description: > Example for rendring a apply glyph.
Definition: apply.php:25
button(string $caption, string $cmd)
Title class.
Definition: Title.php:26
collapse()
description: > Example for rendering a collapse glyph.
Definition: collapse.php:27
form( $class_path, string $cmd, string $submit_caption="")
expand()
description: > Example for rendering an expand glyph.
Definition: expand.php:25
filter(string $filter_id, $class_path, string $cmd, bool $activated=true, bool $expanded=true)
$r
+ Here is the call graph for this function:

The documentation for this class was generated from the following file: