ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
PopoverTest.php
Go to the documentation of this file.
1<?php
3use \ILIAS\UI\Implementation as I;
4
5require_once(__DIR__ . "/../../../../libs/composer/vendor/autoload.php");
6require_once(__DIR__ . "/../../Base.php");
7
16{
17 public function test_implements_interface()
18 {
19 $factory = new I\Component\Popover\Factory(new I\Component\SignalGenerator);
20 $standard = $factory->standard(new DummyComponent());
21 $this->assertInstanceOf("ILIAS\\UI\\Component\\Popover\\Standard", $standard);
22 $listing = $factory->listing([new DummyComponent()]);
23 $this->assertInstanceOf("ILIAS\\UI\\Component\\Popover\\Listing", $listing);
24 }
25
27 {
28 $factory = new I\Component\Popover\Factory(new I\Component\SignalGenerator);
29 $popover = $factory->standard(new DummyComponent());
30 $this->assertEquals(Popover::POS_AUTO, $popover->getPosition());
31 }
32
33 public function test_with_position()
34 {
35 $factory = new I\Component\Popover\Factory(new I\Component\SignalGenerator);
36 $popover1 = $factory->standard(new DummyComponent());
37 $popover2 = $popover1->withVerticalPosition();
38 $popover3 = $popover2->withHorizontalPosition();
39 $this->assertEquals(Popover::POS_AUTO, $popover1->getPosition());
40 $this->assertEquals(Popover::POS_VERTICAL, $popover2->getPosition());
41 $this->assertEquals(Popover::POS_HORIZONTAL, $popover3->getPosition());
42 $this->assertEquals($popover1->getContent(), $popover2->getContent());
43 $this->assertEquals($popover1->getContent(), $popover3->getContent());
44 }
45
46 public function test_render_standard()
47 {
48 $factory = new I\Component\Popover\Factory(new I\Component\SignalGenerator);
49 $popover = $factory->standard(new I\Component\Legacy\Legacy('myContent'));
50 $expected = $this->normalizeHTML($this->getExpectedStandardHTML('myContent'));
51 $actual = $this->normalizeHTML($this->getDefaultRenderer()->render($popover));
52 $this->assertEquals($expected, $actual);
53 }
54
55 public function test_render_listing()
56 {
57 // TODO Listing not yet in framework core
58 $this->assertTrue(true);
59 }
60
61 public function test_render_async()
62 {
63 $factory = new I\Component\Popover\Factory(new I\Component\SignalGenerator);
64 $popover = $factory->standard(new I\Component\Legacy\Legacy('myContent'))->withAsyncContentUrl('/blub/');
65 $this->assertEquals('', $this->getDefaultRenderer()->render($popover));
66 }
67
72 protected function getExpectedStandardHTML($content)
73 {
74 return '<div class="il-standard-popover-content" style="display:none;" id="id_1">' . $content . '</div>';
75 }
76}
$factory
Definition: metadata.php:43
An exception for terminatinating execution or to throw for unit testing.
Provides common functionality for UI tests.
Definition: Base.php:192
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:228
normalizeHTML($html)
Definition: Base.php:261
Class PopoverTest.
Definition: PopoverTest.php:16
test_that_position_is_auto_by_default()
Definition: PopoverTest.php:26
test_implements_interface()
Definition: PopoverTest.php:17
test_with_position()
Definition: PopoverTest.php:33
test_render_standard()
Definition: PopoverTest.php:46
getExpectedStandardHTML($content)
Definition: PopoverTest.php:72
test_render_listing()
Definition: PopoverTest.php:55