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

Test on ProgressMeter implementation. More...

+ Inheritance diagram for ChartProgressMeterTest:
+ Collaboration diagram for ChartProgressMeterTest:

Public Member Functions

 test_implements_factory_interface ()
 
 test_get_instances ()
 
 test_get_values_of_standard ()
 
 test_get_values_of_fixedSize ()
 
 test_get_values_of_mini ()
 
 test_render_standard_two_bar ()
 
 test_render_fixedSize_one_bar ()
 
 test_render_mini ()
 
- 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

 getFactory ()
 
- Protected Member Functions inherited from ILIAS_UI_TestBase
 brutallyTrimHTML ($html)
 A more radical version of normalizeHTML. More...
 

Detailed Description

Test on ProgressMeter implementation.

Definition at line 14 of file ChartProgressMeterTest.php.

Member Function Documentation

◆ getFactory()

ChartProgressMeterTest::getFactory ( )
protected

Definition at line 16 of file ChartProgressMeterTest.php.

17 {
18 return new I\Component\Chart\ProgressMeter\Factory();
19 }

Referenced by test_get_instances(), test_get_values_of_fixedSize(), test_get_values_of_mini(), test_get_values_of_standard(), test_implements_factory_interface(), test_render_fixedSize_one_bar(), test_render_mini(), and test_render_standard_two_bar().

+ Here is the caller graph for this function:

◆ test_get_instances()

ChartProgressMeterTest::test_get_instances ( )

Definition at line 28 of file ChartProgressMeterTest.php.

29 {
30 $progressmeter = $this->getFactory();
31
32 $standard = $progressmeter->standard(400, 250);
33 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\Standard", $standard);
34
35 $fixedSize = $progressmeter->fixedSize(400, 250);
36 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\FixedSize", $fixedSize);
37
38 $mini = $progressmeter->mini(400, 250);
39 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\Mini", $mini);
40 }

References getFactory().

+ Here is the call graph for this function:

◆ test_get_values_of_fixedSize()

ChartProgressMeterTest::test_get_values_of_fixedSize ( )

Definition at line 56 of file ChartProgressMeterTest.php.

57 {
58 $f = $this->getFactory();
59 $fixedSize = $f->fixedSize(400, 250, 300, 200);
60
61 $this->assertEquals($fixedSize->getMaximum(), 400);
62 $this->assertEquals($fixedSize->getMainValue(), 250);
63 $this->assertEquals($fixedSize->getMainValueAsPercent(), 63);
64 $this->assertEquals($fixedSize->getRequired(), 300);
65 $this->assertEquals($fixedSize->getRequiredAsPercent(), 75);
66 $this->assertEquals($fixedSize->getComparison(), 200);
67 $this->assertEquals($fixedSize->getComparisonAsPercent(), 50);
68 }

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

+ Here is the call graph for this function:

◆ test_get_values_of_mini()

ChartProgressMeterTest::test_get_values_of_mini ( )

Definition at line 70 of file ChartProgressMeterTest.php.

71 {
72 $f = $this->getFactory();
73 $mini = $f->mini(400, 250, 300);
74
75 $this->assertEquals($mini->getMaximum(), 400);
76 $this->assertEquals($mini->getMainValue(), 250);
77 $this->assertEquals($mini->getMainValueAsPercent(), 63);
78 $this->assertEquals($mini->getRequired(), 300);
79 $this->assertEquals($mini->getRequiredAsPercent(), 75);
80 }

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

+ Here is the call graph for this function:

◆ test_get_values_of_standard()

ChartProgressMeterTest::test_get_values_of_standard ( )

Definition at line 42 of file ChartProgressMeterTest.php.

43 {
44 $f = $this->getFactory();
45 $standard = $f->standard(400, 250, 300, 200);
46
47 $this->assertEquals($standard->getMaximum(), 400);
48 $this->assertEquals($standard->getMainValue(), 250);
49 $this->assertEquals($standard->getMainValueAsPercent(), 63);
50 $this->assertEquals($standard->getRequired(), 300);
51 $this->assertEquals($standard->getRequiredAsPercent(), 75);
52 $this->assertEquals($standard->getComparison(), 200);
53 $this->assertEquals($standard->getComparisonAsPercent(), 50);
54 }

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

+ Here is the call graph for this function:

◆ test_implements_factory_interface()

ChartProgressMeterTest::test_implements_factory_interface ( )

Definition at line 21 of file ChartProgressMeterTest.php.

22 {
23 $progressmeter = $this->getFactory();
24
25 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\Factory", $progressmeter);
26 }

References getFactory().

+ Here is the call graph for this function:

◆ test_render_fixedSize_one_bar()

ChartProgressMeterTest::test_render_fixedSize_one_bar ( )

Definition at line 123 of file ChartProgressMeterTest.php.

124 {
125 $r = $this->getDefaultRenderer();
126 $f = $this->getFactory();
127 $fixedSize = $f->fixedSize(100, 75, 80, null, 300);
128
129 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\FixedSize", $fixedSize);
130
131 $html = $r->render($fixedSize);
132
133 $expected_html =
134 '<div class="il-chart-progressmeter-box fixed-size">' .
135 '<div class="il-chart-progressmeter-container">' .
136 '<svg viewBox="0 0 50 40" class="il-chart-progressmeter-viewbox">' .
137 '<path class="il-chart-progressmeter-circle-bg" stroke-dasharray="100, 100" ' .
138 'd="M10.4646,37.0354 q-5.858,-5.858 -5.858,-14.142 a1,1 0 1,1 40,0 q0,8.284 -5.858,14.142"></path>' .
139 '<g class="il-chart-progressmeter-monocircle">' .
140 '<path class="il-chart-progressmeter-circle no-success" stroke-dasharray="75, 100" ' .
141 'd="M10.4646,37.0354 q-5.858,-5.858 -5.858,-14.142 a1,1 0 1,1 40,0 q0,8.284 -5.858,14.142"></path>' .
142 '</g>' .
143 '<g class="il-chart-progressmeter-text">' .
144 '<text class="text-score-info" x="25" y="16"></text>' .
145 '<text class="text-score" x="25" y="25">75 %</text>' .
146 '<text class="text-comparision" x="25" y="31">80 %</text>' .
147 '<text class="text-comparision-info" x="25" y="34"></text>' .
148 '</g>' .
149 '<g class="il-chart-progressmeter-needle " style="transform: rotate(82.8deg)">' .
150 '<polygon class="il-chart-progressmeter-needle-border" points="23.5,0.1 25,2.3 26.5,0.1"></polygon>' .
151 '<polygon class="il-chart-progressmeter-needle-fill" points="23.5,0 25,2.2 26.5,0"></polygon>' .
152 '</g>' .
153 '</svg>' .
154 '</div>' .
155 '</div>';
156
157 $this->assertHTMLEquals($expected_html, $html);
158 }
assertHTMLEquals($expected_html_as_string, $html_as_string)
Definition: Base.php:326
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268

References Vendor\Package\$f, ILIAS_UI_TestBase\assertHTMLEquals(), ILIAS_UI_TestBase\getDefaultRenderer(), and getFactory().

+ Here is the call graph for this function:

◆ test_render_mini()

ChartProgressMeterTest::test_render_mini ( )

Definition at line 160 of file ChartProgressMeterTest.php.

161 {
162 $r = $this->getDefaultRenderer();
163 $f = $this->getFactory();
164 $mini = $f->mini(400, 250, 300);
165
166 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\Mini", $mini);
167
168 $html = $r->render($mini);
169
170 $expected_html =
171 '<div class="il-chart-progressmeter-box il-chart-progressmeter-mini">' .
172 '<div class="il-chart-progressmeter-container">' .
173 '<svg viewBox="0 0 50 40" class="il-chart-progressmeter-viewbox">' .
174 '<path class="il-chart-progressmeter-circle-bg" stroke-dasharray="100, 100" ' .
175 'd="M9,35 q-4.3934,-4.3934 -4.3934,-10.6066 a1,1 0 1,1 40,0 q0,6.2132 -4.3934,10.6066"></path>' .
176 '<path class="il-chart-progressmeter-circle no-success" stroke-dasharray="54.495, 100" ' .
177 'd="M9,35 q-4.3934,-4.3934 -4.3934,-10.6066 a1,1 0 1,1 40,0 q0,6.2132 -4.3934,10.6066"></path>' .
178 '<path class="il-chart-progressmeter-needle " stroke-dasharray="100, 100" d="M25,10 l0,15" ' .
179 'style="transform: rotate(57.5deg)"></path>' .
180 '</svg>' .
181 '</div>' .
182 '</div>';
183
184 $this->assertHTMLEquals($expected_html, $html);
185 }

References Vendor\Package\$f, ILIAS_UI_TestBase\assertHTMLEquals(), ILIAS_UI_TestBase\getDefaultRenderer(), and getFactory().

+ Here is the call graph for this function:

◆ test_render_standard_two_bar()

ChartProgressMeterTest::test_render_standard_two_bar ( )

Definition at line 82 of file ChartProgressMeterTest.php.

83 {
84 $r = $this->getDefaultRenderer();
85 $f = $this->getFactory();
86 $standard = $f->standard(100, 75, 80, 50);
87
88 $this->assertInstanceOf("ILIAS\\UI\\Component\\Chart\\ProgressMeter\\Standard", $standard);
89
90 $html = $r->render($standard);
91
92 $expected_html =
93 '<div class="il-chart-progressmeter-box ">' .
94 '<div class="il-chart-progressmeter-container">' .
95 '<svg viewBox="0 0 50 40" class="il-chart-progressmeter-viewbox">' .
96 '<path class="il-chart-progressmeter-circle-bg" stroke-dasharray="100, 100" ' .
97 'd="M10.4646,37.0354 q-5.858,-5.858 -5.858,-14.142 a1,1 0 1,1 40,0 q0,8.284 -5.858,14.142"></path>' .
98 '<g class="il-chart-progressmeter-multicircle">' .
99 '<path class="il-chart-progressmeter-circle no-success" ' .
100 'd="M9.6514,37.8486 q-6.1948,-6.1948 -6.1948,-14.9552 a1,1 0 1,1 42.30,0 q0,8.7604 -6.1948,14.9552" ' .
101 'stroke-dasharray="75, 100"></path>' .
102 '<path class="il-chart-progressmeter-circle active" ' .
103 'd="M11.2778,36.2222 q-5.5212,-5.5212 -5.5212,-13.3288 a1,1 0 1,1 37.70,0 q0,7.8076 -5.5212,13.3288" ' .
104 'stroke-dasharray="44.4, 100"></path>' .
105 '</g>' .
106 '<g class="il-chart-progressmeter-text">' .
107 '<text class="text-score-info" x="25" y="16"></text>' .
108 '<text class="text-score" x="25" y="25">75 %</text>' .
109 '<text class="text-comparision" x="25" y="31">80 %</text>' .
110 '<text class="text-comparision-info" x="25" y="34"></text>' .
111 '</g>' .
112 '<g class="il-chart-progressmeter-needle " style="transform: rotate(82.8deg)">' .
113 '<polygon class="il-chart-progressmeter-needle-border" points="23.5,0.1 25,2.3 26.5,0.1"></polygon>' .
114 '<polygon class="il-chart-progressmeter-needle-fill" points="23.5,0 25,2.2 26.5,0"></polygon>' .
115 '</g>' .
116 '</svg>' .
117 '</div>' .
118 '</div>';
119
120 $this->assertHTMLEquals($expected_html, $html);
121 }

References Vendor\Package\$f, ILIAS_UI_TestBase\assertHTMLEquals(), ILIAS_UI_TestBase\getDefaultRenderer(), and getFactory().

+ Here is the call graph for this function:

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