ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
StandardFilterTest Class Reference

Test on standard filter implementation. More...

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

Public Member Functions

 getUIFactory ()
 
 test_render_activated_collapsed ()
 
 test_render_deactivated_collapsed ()
 
 test_render_activated_expanded ()
 
 test_render_deactivated_expanded ()
 
- Public Member Functions inherited from ILIAS_UI_TestBase
 setUp ()
 
 tearDown ()
 
 getUIFactory ()
 
 getTemplateFactory ()
 
 getResourceRegistry ()
 
 getLanguage ()
 
 getJavaScriptBinding ()
 
 getRefinery ()
 
 getDefaultRenderer (JavaScriptBinding $js_binding=null)
 
 getDecoratedRenderer (Renderer $default)
 
 normalizeHTML ($html)
 
 assertHTMLEquals ($expected_html_as_string, $html_as_string)
 

Protected Member Functions

 buildFactory ()
 
 buildInputFactory ()
 
 buildButtonFactory ()
 
 buildSymbolFactory ()
 
 buildPopoverFactory ()
 
 buildLegacyFactory ()
 
 buildListingFactory ()
 
- Protected Member Functions inherited from ILIAS_UI_TestBase
 brutallyTrimHTML ($html)
 A more radical version of normalizeHTML. More...
 

Detailed Description

Test on standard filter implementation.

Definition at line 62 of file StandardFilterTest.php.

Member Function Documentation

◆ buildButtonFactory()

StandardFilterTest::buildButtonFactory ( )
protected

Definition at line 84 of file StandardFilterTest.php.

Referenced by getUIFactory().

+ Here is the caller graph for this function:

◆ buildFactory()

StandardFilterTest::buildFactory ( )
protected

Definition at line 64 of file StandardFilterTest.php.

References buildInputFactory().

Referenced by test_render_activated_collapsed(), test_render_activated_expanded(), test_render_deactivated_collapsed(), and test_render_deactivated_expanded().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildInputFactory()

StandardFilterTest::buildInputFactory ( )
protected

Definition at line 72 of file StandardFilterTest.php.

73 {
74 $df = new Data\Factory();
75 $language = $this->createMock(\ilLanguage::class);
77 new SignalGenerator(),
78 $df,
79 new ILIAS\Refinery\Factory($df, $language),
80 $language
81 );
82 }
Builds data types.
Definition: Factory.php:20
Class ChatMainBarProvider \MainMenu\Provider.

Referenced by buildFactory(), test_render_activated_collapsed(), test_render_activated_expanded(), test_render_deactivated_collapsed(), and test_render_deactivated_expanded().

+ Here is the caller graph for this function:

◆ buildLegacyFactory()

StandardFilterTest::buildLegacyFactory ( )
protected

Definition at line 103 of file StandardFilterTest.php.

Referenced by getUIFactory().

+ Here is the caller graph for this function:

◆ buildListingFactory()

StandardFilterTest::buildListingFactory ( )
protected

Definition at line 108 of file StandardFilterTest.php.

Referenced by getUIFactory().

+ Here is the caller graph for this function:

◆ buildPopoverFactory()

StandardFilterTest::buildPopoverFactory ( )
protected

Definition at line 98 of file StandardFilterTest.php.

Referenced by getUIFactory().

+ Here is the caller graph for this function:

◆ buildSymbolFactory()

StandardFilterTest::buildSymbolFactory ( )
protected

Definition at line 89 of file StandardFilterTest.php.

90 {
92 new ILIAS\UI\Implementation\Component\Symbol\Icon\Factory,
93 new ILIAS\UI\Implementation\Component\Symbol\Glyph\Factory,
94 new ILIAS\UI\Implementation\Component\Symbol\Avatar\Factory
95 );
96 }
Class Factory.

Referenced by getUIFactory().

+ Here is the caller graph for this function:

◆ getUIFactory()

StandardFilterTest::getUIFactory ( )

Reimplemented from ILIAS_UI_TestBase.

Definition at line 113 of file StandardFilterTest.php.

References buildButtonFactory(), buildLegacyFactory(), buildListingFactory(), buildPopoverFactory(), and buildSymbolFactory().

+ Here is the call graph for this function:

◆ test_render_activated_collapsed()

StandardFilterTest::test_render_activated_collapsed ( )

Definition at line 124 of file StandardFilterTest.php.

125 {
126 $f = $this->buildFactory();
127 $if = $this->buildInputFactory();
128 $inputs = [$if->text("Title"), $if->select("Selection", ["One", "Two", "Three"])];
129 $inputs_rendered = [true, false];
130
131 $filter = $f->standard(
132 "#",
133 "#",
134 "#",
135 "#",
136 "#",
137 "#",
138 $inputs,
139 $inputs_rendered,
140 true,
141 false
142 );
143
144 $r = $this->getDefaultRenderer();
145 $html = $r->render($filter);
146
147 $expected = <<<EOT
148<div class="il-filter enabled" id="id_1">
149 <form class="il-standard-form form-horizontal" enctype="multipart/formdata" method="get" novalidate="novalidate" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#">
150 <div class="il-filter-bar">
151 <span class="il-filter-bar-opener" data-toggle="collapse" data-target=".il-filter-inputs-active,.il-filter-input-section" aria-expanded="false">
152 <button class="btn btn-bulky" data-action="" id="id_2">
153 <span class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></span>
154 <span class="bulky-label">filter</span>
155 </button>
156 <button class="btn btn-bulky" data-action="" id="id_3">
157 <span class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></span>
158 <span class="bulky-label">filter</span>
159 </button>
160 </span>
161 <span class="il-filter-bar-controls">
162 <button class="btn btn-bulky" data-action="" id="id_4">
163 <span class="glyph" aria-label="apply"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></span>
164 <span class="bulky-label">apply</span>
165 </button>
166 <button class="btn btn-bulky" data-action="#" id="id_5">
167 <span class="glyph" aria-label="reset"><span class="glyphicon glyphicon-repeat" aria-hidden="true"></span></span>
168 <span class="bulky-label">reset</span>
169 </button>
170 <button class="il-toggle-button on" id="id_6" aria-pressed="false">
171 <div class="il-toggle-switch"></div>
172 </button>
173 </span>
174 </div>
175 <div class="il-filter-inputs-active clearfix collapse in"> <span id="1"> </span> <span id="2"> </span> </div>
176 <div class="il-filter-input-section form-group row collapse ">
177 <div class="col-md-4 il-popover-container">
178 <div class="input-group">
179 <span class="input-group-addon leftaddon">Title</span>
180 <span role="button" tabindex="0" class="form-control il-filter-field" id="id_10" data-placement="bottom"></span>
181 <div class="il-standard-popover-content" style="display:none;" id="id_8"></div>
182 <span class="input-group-addon rightaddon">
183 <a class="glyph" href="" aria-label="remove" id="id_11">
184 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
185 </a>
186 </span>
187 </div>
188 </div>
189 <div class="col-md-4 il-popover-container">
190 <div class="input-group">
191 <span class="input-group-addon leftaddon">Selection</span>
192 <span role="button" tabindex="0" class="form-control il-filter-field" id="id_15" data-placement="bottom"></span>
193 <div class="il-standard-popover-content" style="display:none;" id="id_13"></div>
194 <span class="input-group-addon rightaddon">
195 <a class="glyph" href="" aria-label="remove" id="id_16">
196 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
197 </a>
198 </span>
199 </div>
200 </div>
201 <div class="col-md-4 il-popover-container">
202 <div class="input-group">
203 <button class="btn btn-bulky" id="id_21">
204 <span class="glyph" aria-label="add">
205 <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
206 </span>
207 <span class="bulky-label"></span>
208 </button>
209 </div>
210 <div class="il-standard-popover-content" style="display:none;" id="id_19"></div>
211 </div>
212 </div>
213 <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
214 <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
215 </form>
216</div>
217EOT;
218
219 $this->assertHTMLEquals($expected, $html);
220 }
apply()
Definition: apply.php:2
assertHTMLEquals($expected_html_as_string, $html_as_string)
Definition: Base.php:326
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
Title class.
Definition: Title.php:37
collapse()
Definition: collapse.php:2
expand()
Definition: expand.php:2

References Vendor\Package\$f, ILIAS\GlobalScreen\Provider\$if, apply(), ILIAS_UI_TestBase\assertHTMLEquals(), buildFactory(), buildInputFactory(), collapse(), expand(), and ILIAS_UI_TestBase\getDefaultRenderer().

+ Here is the call graph for this function:

◆ test_render_activated_expanded()

StandardFilterTest::test_render_activated_expanded ( )

Definition at line 309 of file StandardFilterTest.php.

310 {
311 $f = $this->buildFactory();
312 $if = $this->buildInputFactory();
313 $inputs = [$if->text("Title"), $if->select("Selection", ["One", "Two", "Three"])];
314 $inputs_rendered = [true, false];
315
316 $filter = $f->standard(
317 "#",
318 "#",
319 "#",
320 "#",
321 "#",
322 "#",
323 $inputs,
324 $inputs_rendered,
325 true,
326 true
327 );
328
329 $r = $this->getDefaultRenderer();
330 $html = $r->render($filter);
331
332 $expected = <<<EOT
333<div class="il-filter enabled" id="id_1">
334 <form class="il-standard-form form-horizontal" enctype="multipart/formdata" method="get" novalidate="novalidate" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#">
335 <div class="il-filter-bar">
336 <span class="il-filter-bar-opener" data-toggle="collapse" data-target=".il-filter-inputs-active,.il-filter-input-section" aria-expanded="true">
337 <button class="btn btn-bulky" data-action="" id="id_2">
338 <span class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></span>
339 <span class="bulky-label">filter</span>
340 </button>
341 <button class="btn btn-bulky" data-action="" id="id_3">
342 <span class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></span>
343 <span class="bulky-label">filter</span>
344 </button>
345 </span>
346 <span class="il-filter-bar-controls">
347 <button class="btn btn-bulky" data-action="" id="id_4">
348 <span class="glyph" aria-label="apply"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></span>
349 <span class="bulky-label">apply</span>
350 </button>
351 <button class="btn btn-bulky" data-action="#" id="id_5">
352 <span class="glyph" aria-label="reset"><span class="glyphicon glyphicon-repeat" aria-hidden="true"></span></span>
353 <span class="bulky-label">reset</span>
354 </button>
355 <button class="il-toggle-button on" id="id_6" aria-pressed="false">
356 <div class="il-toggle-switch"></div>
357 </button>
358 </span>
359 </div>
360 <div class="il-filter-inputs-active clearfix collapse "> <span id="1"> </span> <span id="2"> </span> </div>
361 <div class="il-filter-input-section form-group row collapse in">
362 <div class="col-md-4 il-popover-container">
363 <div class="input-group">
364 <span class="input-group-addon leftaddon">Title</span>
365 <span role="button" tabindex="0" class="form-control il-filter-field" id="id_10" data-placement="bottom"></span>
366 <div class="il-standard-popover-content" style="display:none;" id="id_8"></div>
367 <span class="input-group-addon rightaddon">
368 <a class="glyph" href="" aria-label="remove" id="id_11">
369 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
370 </a>
371 </span>
372 </div>
373 </div>
374 <div class="col-md-4 il-popover-container">
375 <div class="input-group">
376 <span class="input-group-addon leftaddon">Selection</span>
377 <span role="button" tabindex="0" class="form-control il-filter-field" id="id_15" data-placement="bottom"></span>
378 <div class="il-standard-popover-content" style="display:none;" id="id_13"></div>
379 <span class="input-group-addon rightaddon"><a class="glyph" href="" aria-label="remove" id="id_16">
380 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
381 </a>
382 </span>
383 </div>
384 </div>
385 <div class="col-md-4 il-popover-container">
386 <div class="input-group">
387 <button class="btn btn-bulky" id="id_21">
388 <span class="glyph" aria-label="add">
389 <span class="glyphicon glyphicon-plus-sign" aria-hidden="true"></span>
390 </span>
391 <span class="bulky-label"></span>
392 </button>
393 </div>
394 <div class="il-standard-popover-content" style="display:none;" id="id_19"></div>
395 </div>
396 </div>
397 <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
398 <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
399 </form>
400</div>
401EOT;
402
403 $this->assertHTMLEquals($expected, $html);
404 }

References Vendor\Package\$f, ILIAS\GlobalScreen\Provider\$if, apply(), ILIAS_UI_TestBase\assertHTMLEquals(), buildFactory(), buildInputFactory(), collapse(), expand(), and ILIAS_UI_TestBase\getDefaultRenderer().

+ Here is the call graph for this function:

◆ test_render_deactivated_collapsed()

StandardFilterTest::test_render_deactivated_collapsed ( )

Definition at line 222 of file StandardFilterTest.php.

223 {
224 $f = $this->buildFactory();
225 $if = $this->buildInputFactory();
226 $inputs = [$if->text("Title"), $if->select("Selection", ["One", "Two", "Three"])];
227 $inputs_rendered = [true, false];
228
229 $filter = $f->standard(
230 "#",
231 "#",
232 "#",
233 "#",
234 "#",
235 "#",
236 $inputs,
237 $inputs_rendered,
238 false,
239 false
240 );
241
242 $r = $this->getDefaultRenderer();
243 $html = $r->render($filter);
244
245 $expected = <<<EOT
246<div class="il-filter disabled" id="id_1">
247 <form class="il-standard-form form-horizontal" enctype="multipart/formdata" method="get" novalidate="novalidate" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#">
248 <div class="il-filter-bar">
249 <span class="il-filter-bar-opener" data-toggle="collapse" data-target=".il-filter-inputs-active,.il-filter-input-section" aria-expanded="false">
250 <button class="btn btn-bulky" data-action="" id="id_2">
251 <span class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></span>
252 <span class="bulky-label">filter</span>
253 </button>
254 <button class="btn btn-bulky" data-action="" id="id_3">
255 <span class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></span>
256 <span class="bulky-label">filter</span>
257 </button>
258 </span>
259 <span class="il-filter-bar-controls">
260 <button class="btn btn-bulky" data-action="" disabled="disabled">
261 <span class="glyph" aria-label="apply"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></span>
262 <span class="bulky-label">apply</span>
263 </button>
264 <button class="btn btn-bulky" data-action="" disabled="disabled">
265 <span class="glyph" aria-label="reset"><span class="glyphicon glyphicon-repeat" aria-hidden="true"></span></span>
266 <span class="bulky-label">reset</span>
267 </button>
268 <button class="il-toggle-button off" id="id_4" aria-pressed="false">
269 <div class="il-toggle-switch"></div>
270 </button>
271 </span>
272 </div>
273 <div class="il-filter-inputs-active clearfix collapse in"></div>
274 <div class="il-filter-input-section form-group row collapse ">
275 <div class="col-md-4 il-popover-container">
276 <div class="input-group">
277 <span class="input-group-addon leftaddon">Title</span>
278 <span role="button" class="form-control il-filter-field" data-placement="bottom"></span>
279 <div class="il-standard-popover-content" style="display:none;" id="id_6"></div>
280 <span class="input-group-addon rightaddon">
281 <a class="glyph disabled" aria-label="remove" aria-disabled="true">
282 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
283 </a>
284 </span>
285 </div>
286 </div>
287 <div class="col-md-4 il-popover-container">
288 <div class="input-group">
289 <span class="input-group-addon leftaddon">Selection</span>
290 <span role="button" class="form-control il-filter-field" data-placement="bottom"></span>
291 <div class="il-standard-popover-content" style="display:none;" id="id_9"></div>
292 <span class="input-group-addon rightaddon">
293 <a class="glyph disabled" aria-label="remove" aria-disabled="true">
294 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
295 </a>
296 </span>
297 </div>
298 </div>
299 </div>
300 <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
301 <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
302 </form>
303</div>
304EOT;
305
306 $this->assertHTMLEquals($expected, $html);
307 }
disabled()
Example showing how to plug a disabled checkbox into a form.
Definition: disabled.php:5

References Vendor\Package\$f, ILIAS\GlobalScreen\Provider\$if, apply(), ILIAS_UI_TestBase\assertHTMLEquals(), buildFactory(), buildInputFactory(), collapse(), disabled(), expand(), and ILIAS_UI_TestBase\getDefaultRenderer().

+ Here is the call graph for this function:

◆ test_render_deactivated_expanded()

StandardFilterTest::test_render_deactivated_expanded ( )

Definition at line 406 of file StandardFilterTest.php.

407 {
408 $f = $this->buildFactory();
409 $if = $this->buildInputFactory();
410 $inputs = [$if->text("Title"), $if->select("Selection", ["One", "Two", "Three"])];
411 $inputs_rendered = [true, false];
412
413 $filter = $f->standard(
414 "#",
415 "#",
416 "#",
417 "#",
418 "#",
419 "#",
420 $inputs,
421 $inputs_rendered,
422 false,
423 true
424 );
425
426 $r = $this->getDefaultRenderer();
427 $html = $r->render($filter);
428
429 $expected = <<<EOT
430<div class="il-filter disabled" id="id_1">
431 <form class="il-standard-form form-horizontal" enctype="multipart/formdata" method="get" novalidate="novalidate" data-cmd-expand="#" data-cmd-collapse="#" data-cmd-apply="#" data-cmd-toggleOn="#">
432 <div class="il-filter-bar">
433 <span class="il-filter-bar-opener" data-toggle="collapse" data-target=".il-filter-inputs-active,.il-filter-input-section" aria-expanded="true">
434 <button class="btn btn-bulky" data-action="" id="id_2">
435 <span class="glyph" aria-label="expand_content"><span class="glyphicon glyphicon-triangle-right" aria-hidden="true"></span></span>
436 <span class="bulky-label">filter</span>
437 </button>
438 <button class="btn btn-bulky" data-action="" id="id_3">
439 <span class="glyph" aria-label="collapse_content"><span class="glyphicon glyphicon-triangle-bottom" aria-hidden="true"></span></span>
440 <span class="bulky-label">filter</span>
441 </button>
442 </span>
443 <span class="il-filter-bar-controls">
444 <button class="btn btn-bulky" data-action="" disabled="disabled">
445 <span class="glyph" aria-label="apply"><span class="glyphicon glyphicon-ok" aria-hidden="true"></span></span>
446 <span class="bulky-label">apply</span>
447 </button>
448 <button class="btn btn-bulky" data-action="" disabled="disabled">
449 <span class="glyph" aria-label="reset"><span class="glyphicon glyphicon-repeat" aria-hidden="true"></span></span>
450 <span class="bulky-label">reset</span>
451 </button>
452 <button class="il-toggle-button off" id="id_4" aria-pressed="false">
453 <div class="il-toggle-switch"></div>
454 </button>
455 </span>
456 </div>
457 <div class="il-filter-input-section form-group row collapse in">
458 <div class="col-md-4 il-popover-container">
459 <div class="input-group">
460 <span class="input-group-addon leftaddon">Title</span>
461 <span role="button" class="form-control il-filter-field" data-placement="bottom"></span>
462 <div class="il-standard-popover-content" style="display:none;" id="id_6"></div>
463 <span class="input-group-addon rightaddon"><a class="glyph disabled" aria-label="remove" aria-disabled="true">
464 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
465 </a>
466 </span>
467 </div>
468 </div>
469 <div class="col-md-4 il-popover-container">
470 <div class="input-group">
471 <span class="input-group-addon leftaddon">Selection</span>
472 <span role="button" class="form-control il-filter-field" data-placement="bottom"></span>
473 <div class="il-standard-popover-content" style="display:none;" id="id_9"></div>
474 <span class="input-group-addon rightaddon"><a class="glyph disabled" aria-label="remove" aria-disabled="true">
475 <span class="glyphicon glyphicon-minus-sign" aria-hidden="true"></span>
476 </a>
477 </span>
478 </div>
479 </div>
480 </div>
481 <input class="il-filter-field-status" type="hidden" name="__filter_status_0" value="1" />
482 <input class="il-filter-field-status" type="hidden" name="__filter_status_1" value="0" />
483 </form>
484</div>
485EOT;
486
487 $this->assertHTMLEquals($expected, $html);
488 }

References Vendor\Package\$f, ILIAS\GlobalScreen\Provider\$if, apply(), ILIAS_UI_TestBase\assertHTMLEquals(), buildFactory(), buildInputFactory(), collapse(), disabled(), expand(), and ILIAS_UI_TestBase\getDefaultRenderer().

+ Here is the call graph for this function:

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