5 require_once(__DIR__ .
"/../../../../../libs/composer/vendor/autoload.php");
6 require_once(__DIR__ .
"/../../../Base.php");
10 use \ILIAS\UI\Component\Input\Field;
12 use \ILIAS\Validation;
13 use \ILIAS\Transformation;
24 $df =
new Data\Factory();
28 new Validation\
Factory($df, $this->createMock(\ilLanguage::class)),
38 $radio =
$f->radio($label, $byline)
39 ->withOption(
'value0',
'label0',
'byline0')
40 ->withOption(
'value1',
'label1',
'byline1')
41 ->withNameFrom($this->name_source);
49 $radio =
$f->radio(
"label",
"byline");
50 $this->assertInstanceOf(Field\Input::class, $radio);
51 $this->assertInstanceOf(Field\Radio::class, $radio);
59 $name = $radio->getName();
60 $label = $radio->getLabel();
61 $byline = $radio->getByline();
65 .
"<div class=\"form-group row\">" 66 .
"<label for=\"\" class=\"control-label col-sm-3\">$label</label>" 67 .
"<div class=\"col-sm-9\">" 68 .
"<div id=\"id_1\" class=\"il-input-radio\">";
70 foreach (
$options as $opt_value => $opt_label) {
72 .
"<div class=\"form-control form-control-sm il-input-radiooption\">" 73 .
"<input type=\"radio\" id=\"id_1_" . $opt_value .
"_opt\" name=\"$name\" value=\"$opt_value\" />" 74 .
"<label for=\"id_1_" . $opt_value .
"_opt\">$opt_label</label>" 75 .
"<div class=\"help-block\">{$radio->getBylineFor($opt_value)}</div>" 81 .
"<div class=\"help-block\">$byline</div>" 92 $name = $radio->getName();
93 $label = $radio->getLabel();
94 $byline = $radio->getByline();
97 $radio = $radio->withValue($value);
99 .
"<div class=\"form-group row\">" 100 .
"<label for=\"\" class=\"control-label col-sm-3\">$label</label>" 101 .
"<div class=\"col-sm-9\">" 102 .
"<div id=\"id_1\" class=\"il-input-radio\">";
104 foreach (
$options as $opt_value => $opt_label) {
105 $expected .=
"<div class=\"form-control form-control-sm il-input-radiooption\">";
106 if ($opt_value === $value) {
107 $expected .=
"<input type=\"radio\" id=\"id_1_" . $opt_value .
"_opt\" name=\"$name\" value=\"$opt_value\" checked=\"checked\"/>";
109 $expected .=
"<input type=\"radio\" id=\"id_1_" . $opt_value .
"_opt\" name=\"$name\" value=\"$opt_value\" />";
112 .
"<label for=\"id_1_" . $opt_value .
"_opt\">$opt_label</label>" 113 .
"<div class=\"help-block\">{$radio->getBylineFor($opt_value)}</div>" 119 .
"<div class=\"help-block\">$byline</div>" 131 $dep_field =
$f->text(
'text',
'text');
132 $radio =
$f->radio(
'label',
'byline')
133 ->withOption(
'value0',
'label0',
'byline0');
135 $this->assertNull($radio->getDependantFieldsFor(
'value0'));
137 $dep = [
'dep1' => $dep_field];
138 $radio = $radio->withOption(
'value1',
'label1',
'byline1', $dep);
141 $radio->getDependantFieldsFor(
'value1')
getDefaultRenderer(JavaScriptBinding $js_binding=null)
Provides common functionality for UI tests.
assertHTMLEquals($expected_html_as_string, $html_as_string)