ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
NumericInputTest Class Reference
+ Inheritance diagram for NumericInputTest:
+ Collaboration diagram for NumericInputTest:

Public Member Functions

 setUp ()
 
 test_implements_factory_interface ()
 
 test_render ()
 
 test_render_error ()
 
 test_render_no_byline ()
 
 test_render_value ()
 
 test_render_disabled ()
 
 testNullValue ()
 
 testEmptyValue ($field)
 testNullValue More...
 
 testZeroIsValidValue ($field)
 testNullValue More...
 
- 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 ()
 
- Protected Member Functions inherited from ILIAS_UI_TestBase
 brutallyTrimHTML ($html)
 A more radical version of normalizeHTML. More...
 

Detailed Description

Definition at line 14 of file NumericInputTest.php.

Member Function Documentation

◆ buildFactory()

NumericInputTest::buildFactory ( )
protected

Definition at line 22 of file NumericInputTest.php.

References ILIAS_UI_TestBase\getLanguage().

Referenced by test_implements_factory_interface(), test_render(), test_render_disabled(), test_render_error(), test_render_no_byline(), test_render_value(), and testNullValue().

23  {
24  $df = new Data\Factory();
25  $language = $this->getLanguage();
27  new SignalGenerator(),
28  $df,
29  new \ILIAS\Refinery\Factory($df, $language),
30  $language
31  );
32  }
Class ChatMainBarProvider .
Builds data types.
Definition: Factory.php:19
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setUp()

NumericInputTest::setUp ( )

Definition at line 16 of file NumericInputTest.php.

16  : void
17  {
18  $this->name_source = new DefNamesource();
19  }

◆ test_implements_factory_interface()

NumericInputTest::test_implements_factory_interface ( )

Definition at line 35 of file NumericInputTest.php.

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

36  {
37  $f = $this->buildFactory();
38 
39  $numeric = $f->numeric("label", "byline");
40 
41  $this->assertInstanceOf(Field\Input::class, $numeric);
42  $this->assertInstanceOf(Field\Numeric::class, $numeric);
43  }
+ Here is the call graph for this function:

◆ test_render()

NumericInputTest::test_render ( )

Definition at line 46 of file NumericInputTest.php.

References Vendor\Package\$f, $name, buildFactory(), ILIAS_UI_TestBase\getDefaultRenderer(), and ILIAS_UI_TestBase\normalizeHTML().

47  {
48  $f = $this->buildFactory();
49  $label = "label";
50  $byline = "byline";
51  $name = "name_0";
52  $numeric = $f->numeric($label, $byline)->withNameFrom($this->name_source);
53 
54  $r = $this->getDefaultRenderer();
55  $html = $this->normalizeHTML($r->render($numeric));
56 
57  $expected = "<div class=\"form-group row\">" . " <label for=\"$name\" class=\"control-label col-sm-3\">$label</label>"
58  . " <div class=\"col-sm-9\">" . " <input type=\"number\" name=\"$name\" class=\"form-control form-control-sm\" />"
59  . " <div class=\"help-block\">$byline</div>" . " " . " </div>" . "</div>";
60  $this->assertEquals($expected, $html);
61  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
normalizeHTML($html)
Definition: Base.php:317
if($format !==null) $name
Definition: metadata.php:230
+ Here is the call graph for this function:

◆ test_render_disabled()

NumericInputTest::test_render_disabled ( )

Definition at line 120 of file NumericInputTest.php.

References Vendor\Package\$f, $name, buildFactory(), ILIAS_UI_TestBase\getDefaultRenderer(), and ILIAS_UI_TestBase\normalizeHTML().

121  {
122  $f = $this->buildFactory();
123  $label = "label";
124  $name = "name_0";
125  $numeric = $f->numeric($label)->withNameFrom($this->name_source)->withDisabled(true);
126 
127  $r = $this->getDefaultRenderer();
128  $html = $this->normalizeHTML($r->render($numeric));
129 
130  $expected = "<div class=\"form-group row\">" . " <label for=\"$name\" class=\"control-label col-sm-3\">$label</label>"
131  . " <div class=\"col-sm-9\">" . " <input type=\"number\" name=\"$name\" disabled=\"disabled\" class=\"form-control form-control-sm\" />"
132  . " " . " " . " </div>" . "</div>";
133  $this->assertEquals($expected, $html);
134  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
normalizeHTML($html)
Definition: Base.php:317
if($format !==null) $name
Definition: metadata.php:230
+ Here is the call graph for this function:

◆ test_render_error()

NumericInputTest::test_render_error ( )

Definition at line 64 of file NumericInputTest.php.

References Vendor\Package\$f, $name, buildFactory(), ILIAS_UI_TestBase\getDefaultRenderer(), and ILIAS_UI_TestBase\normalizeHTML().

65  {
66  $f = $this->buildFactory();
67  $label = "label";
68  $byline = "byline";
69  $name = "name_0";
70  $error = "an_error";
71  $numeric = $f->numeric($label, $byline)->withNameFrom($this->name_source)->withError($error);
72 
73  $r = $this->getDefaultRenderer();
74  $html = $this->normalizeHTML($r->render($numeric));
75 
76  $expected = "<div class=\"form-group row\">" . " <label for=\"$name\" class=\"control-label col-sm-3\">$label</label>"
77  . " <div class=\"col-sm-9\">" . " <input type=\"number\" name=\"$name\" class=\"form-control form-control-sm\" />"
78  . " <div class=\"help-block\">$byline</div>" . " <div class=\"help-block alert alert-danger\" role=\"alert\">"
79  . " <img border=\"0\" src=\"./templates/default/images/icon_alert.svg\" alt=\"alert\" />" . " $error"
80  . " </div>" . " </div>" . "</div>";
81  $this->assertEquals($expected, $html);
82  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
normalizeHTML($html)
Definition: Base.php:317
if($format !==null) $name
Definition: metadata.php:230
+ Here is the call graph for this function:

◆ test_render_no_byline()

NumericInputTest::test_render_no_byline ( )

Definition at line 85 of file NumericInputTest.php.

References Vendor\Package\$f, $name, buildFactory(), ILIAS_UI_TestBase\getDefaultRenderer(), and ILIAS_UI_TestBase\normalizeHTML().

86  {
87  $f = $this->buildFactory();
88  $label = "label";
89  $name = "name_0";
90  $numeric = $f->numeric($label)->withNameFrom($this->name_source);
91 
92  $r = $this->getDefaultRenderer();
93  $html = $this->normalizeHTML($r->render($numeric));
94 
95  $expected = "<div class=\"form-group row\">" . " <label for=\"$name\" class=\"control-label col-sm-3\">$label</label>"
96  . " <div class=\"col-sm-9\">" . " <input type=\"number\" name=\"$name\" class=\"form-control form-control-sm\" />"
97  . " " . " " . " </div>" . "</div>";
98  $this->assertEquals($expected, $html);
99  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
normalizeHTML($html)
Definition: Base.php:317
if($format !==null) $name
Definition: metadata.php:230
+ Here is the call graph for this function:

◆ test_render_value()

NumericInputTest::test_render_value ( )

Definition at line 102 of file NumericInputTest.php.

References Vendor\Package\$f, $name, buildFactory(), ILIAS_UI_TestBase\getDefaultRenderer(), and ILIAS_UI_TestBase\normalizeHTML().

103  {
104  $f = $this->buildFactory();
105  $label = "label";
106  $value = "10";
107  $name = "name_0";
108  $numeric = $f->numeric($label)->withValue($value)->withNameFrom($this->name_source);
109 
110  $r = $this->getDefaultRenderer();
111  $html = $this->normalizeHTML($r->render($numeric));
112 
113  $expected = "<div class=\"form-group row\">" . " <label for=\"$name\" class=\"control-label col-sm-3\">$label</label>"
114  . " <div class=\"col-sm-9\">"
115  . " <input type=\"number\" value=\"$value\" name=\"$name\" class=\"form-control form-control-sm\" />" . " " . " "
116  . " </div>" . "</div>";
117  $this->assertEquals($expected, $html);
118  }
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Definition: Base.php:268
normalizeHTML($html)
Definition: Base.php:317
if($format !==null) $name
Definition: metadata.php:230
+ Here is the call graph for this function:

◆ testEmptyValue()

NumericInputTest::testEmptyValue (   $field)

testNullValue

Definition at line 155 of file NumericInputTest.php.

156  {
157  $post_data = new DefInputData(['name_0' => '']);
158  $field_required = $field->withRequired(true);
159 
160  $value = $field->withInput($post_data)->getContent();
161  $this->assertTrue($value->isOk());
162  $this->assertNull($value->value());
163 
164  $field_required = $field_required->withInput($post_data);
165  $value = $field_required->getContent();
166  $this->assertTrue($value->isError());
167  }

◆ testNullValue()

NumericInputTest::testNullValue ( )

Definition at line 136 of file NumericInputTest.php.

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

137  {
138  $f = $this->buildFactory();
139  $post_data = new DefInputData(['name_0' => null]);
140  $field = $f->numeric('')->withNameFrom($this->name_source);
141  $field_required = $field->withRequired(true);
142 
143  $value = $field->withInput($post_data)->getContent();
144  $this->assertTrue($value->isOk());
145  $this->assertNull($value->value());
146 
147  $value = $field_required->withInput($post_data)->getContent();
148  $this->assertTrue($value->isError());
149  return $field;
150  }
+ Here is the call graph for this function:

◆ testZeroIsValidValue()

NumericInputTest::testZeroIsValidValue (   $field)

testNullValue

Definition at line 172 of file NumericInputTest.php.

173  {
174  $post_data = new DefInputData(['name_0' => 0]);
175  $field_required = $field->withRequired(true);
176 
177  $value = $field->withInput($post_data)->getContent();
178  $this->assertTrue($value->isOk());
179  $this->assertEquals(0, $value->value());
180 
181  $value = $field_required->withInput($post_data)->getContent();
182  $this->assertTrue($value->isOK());
183  $this->assertEquals(0, $value->value());
184  }

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