ILIAS  release_8 Revision v8.19-1-g4e8f2f9140c
All Data Structures Namespaces Files Functions Variables Modules Pages
ComponentRendererFSLoaderTest Class Reference
+ Inheritance diagram for ComponentRendererFSLoaderTest:
+ Collaboration diagram for ComponentRendererFSLoaderTest:

Public Member Functions

 test_getRenderer_successfully ()
 
 test_getRenderer_successfully_extra ()
 
 test_getRenderer_uses_RendererFactory ()
 

Protected Member Functions

 getComponentRendererFSLoader ()
 

Private Attributes

 $glyph_renderer
 
 $icon_renderer
 

Detailed Description

Definition at line 31 of file ComponentRendererFSLoaderTest.php.

Member Function Documentation

◆ getComponentRendererFSLoader()

ComponentRendererFSLoaderTest::getComponentRendererFSLoader ( )
protected

Definition at line 42 of file ComponentRendererFSLoaderTest.php.

References $lng.

Referenced by test_getRenderer_successfully(), and test_getRenderer_successfully_extra().

42  : FSLoader
43  {
44  $ui_factory = $this->getMockBuilder(ILIAS\UI\Factory::class)->getMock();
45  $tpl_factory = $this->getMockBuilder(I\Render\TemplateFactory::class)->getMock();
46  $lng = $this->getMockBuilder(ilLanguage::class)->disableOriginalConstructor()->getMock();
47  $js_binding = $this->getMockBuilder(I\Render\JavaScriptBinding::class)->getMock();
48  $refinery_mock = $this->getMockBuilder(Refinery::class)
49  ->disableOriginalConstructor()
50  ->getMock();
51  $image_path_resolver = $this->getMockBuilder(ILIAS\UI\Implementation\Render\ImagePathResolver::class)
52  ->getMock();
53  $data_factory = $this->getMockBuilder(ILIAS\Data\Factory::class)->getMock();
54 
55  $default_renderer_factory = new I\Render\DefaultRendererFactory(
56  $ui_factory,
57  $tpl_factory,
58  $lng,
59  $js_binding,
60  $refinery_mock,
61  $image_path_resolver,
62  $data_factory,
63  );
64  $this->glyph_renderer = $this->createMock(I\Render\RendererFactory::class);
65  $this->icon_renderer = $this->createMock(I\Render\RendererFactory::class);
66 
67  $field_renderer = $this->createMock(I\Render\RendererFactory::class);
68  return new FSLoader($default_renderer_factory, $this->glyph_renderer, $this->icon_renderer, $field_renderer);
69  }
Class Factory.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$lng
Loads renderers for components from the file system.
Definition: FSLoader.php:39
Class ChatMainBarProvider .
+ Here is the caller graph for this function:

◆ test_getRenderer_successfully()

ComponentRendererFSLoaderTest::test_getRenderer_successfully ( )

Definition at line 71 of file ComponentRendererFSLoaderTest.php.

References Vendor\Package\$f, and getComponentRendererFSLoader().

71  : void
72  {
73  // There should be a renderer for Glyph...
75  $component = new I\Component\Button\Standard("", "");
76  $r = $f->getRendererFor($component, []);
77  $this->assertInstanceOf(I\Render\ComponentRenderer::class, $r);
78  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ test_getRenderer_successfully_extra()

ComponentRendererFSLoaderTest::test_getRenderer_successfully_extra ( )

Definition at line 80 of file ComponentRendererFSLoaderTest.php.

References $context, Vendor\Package\$f, and getComponentRendererFSLoader().

80  : void
81  {
82  // There should be a renderer for Glyph...
84  $component = new I\Component\Symbol\Glyph\Glyph("up", "up");
85  $context = $this->createMock(Component::class);
86  $renderer = $this->createMock(I\Render\ComponentRenderer::class);
87 
88  $context_name = "foo";
89  $context
90  ->expects($this->once())
91  ->method("getCanonicalName")
92  ->willReturn($context_name);
93 
94  $this->glyph_renderer
95  ->expects($this->once())
96  ->method("getRendererInContext")
97  ->with($component, [$context_name])
98  ->willReturn($renderer);
99 
100  $r = $f->getRendererFor($component, [$context]);
101 
102  $this->assertEquals($renderer, $r);
103  }
$context
Definition: webdav.php:29
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ test_getRenderer_uses_RendererFactory()

ComponentRendererFSLoaderTest::test_getRenderer_uses_RendererFactory ( )

Definition at line 105 of file ComponentRendererFSLoaderTest.php.

References $factory.

105  : void
106  {
107  $loader = $this->getMockBuilder(ILIAS\UI\Implementation\Render\FSLoader::class)
108  ->onlyMethods(["getRendererFactoryFor", "getContextNames"])
109  ->disableOriginalConstructor()
110  ->getMock();
111  $factory = $this->getMockBuilder(ILIAS\UI\Implementation\Render\RendererFactory::class)
112  ->getMock();
113 
114  $rendered_component = $this->createMock(ILIAS\UI\Component\Component::class);
115 
116  $component1 = $this->createMock(ILIAS\UI\Component\Component::class);
117  $component2 = $this->createMock(ILIAS\UI\Component\Component::class);
118  $component_name1 = "COMPONENT 1";
119  $component_name2 = "COMPONENT 2";
120 
121  $loader
122  ->expects($this->once())
123  ->method("getContextNames")
124  ->with([$component1, $component2])
125  ->willReturn([$component_name1, $component_name2]);
126 
127  $loader
128  ->expects($this->once())
129  ->method("getRendererFactoryFor")
130  ->with($rendered_component)
131  ->willReturn($factory);
132 
133  $renderer = $this->createMock(ComponentRenderer::class);
134  $factory
135  ->expects($this->once())
136  ->method("getRendererInContext")
137  ->with($rendered_component, [$component_name1, $component_name2])
138  ->willReturn($renderer);
139 
140  $renderer2 = $loader->getRendererFor($rendered_component, [$component1, $component2]);
141  $this->assertEquals($renderer, $renderer2);
142  }
Class Factory.
Class ChatMainBarProvider .
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$factory
Definition: metadata.php:75

Field Documentation

◆ $glyph_renderer

ComponentRendererFSLoaderTest::$glyph_renderer
private

Definition at line 36 of file ComponentRendererFSLoaderTest.php.

◆ $icon_renderer

ComponentRendererFSLoaderTest::$icon_renderer
private

Definition at line 40 of file ComponentRendererFSLoaderTest.php.


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