ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
FieldFactoryTest.php
Go to the documentation of this file.
1 <?php
2 
3 require_once 'tests/UI/AbstractFactoryTest.php';
4 
5 use \ILIAS\UI\Component\Input\Field;
7 use \ILIAS\Data;
9 
11 {
13  "text" => array(
14  "context" => false,
15  ),
16  "numeric" => array(
17  "context" => false,
18  ),
19  "group" => array(
20  "context" => false,
21  ),
22  "section" => array(
23  "context" => false,
24  ),
25  "optionalGroup" => array(
26  "context" => false,
27  ),
28  "switchableGroup" => array(
29  "context" => false,
30  ),
31  "checkbox" => array(
32  "context" => false,
33  ),
34  "select" => array(
35  "context" => false,
36  ),
37  "textarea" => array(
38  "context" => false,
39  ),
40  "radio" => array(
41  "context" => false,
42  ),
43  "multiSelect" => array(
44  "context" => false,
45  )
46  );
47  public $factory_title = 'ILIAS\\UI\\Component\\Input\\Field\\Factory';
48 
49 
50  final public function buildFactory()
51  {
52  $df = new Data\Factory();
53  $language = $this->createMock(\ilLanguage::class);
54  return new \ILIAS\UI\Implementation\Component\Input\Field\Factory(
55  new SignalGenerator(),
56  $df,
57  new \ILIAS\Refinery\Factory($df, $language),
58  $language
59  );
60  }
61 
63  {
64  $f = $this->buildFactory();
65 
66  $input = $f->text("label", "byline");
67  $this->assertInstanceOf(Field\Input::class, $input);
68  $this->assertInstanceOf(Field\Text::class, $input);
69  }
70 
72  {
73  $f = $this->buildFactory();
74 
75  $input = $f->numeric("label", "byline");
76  $this->assertInstanceOf(Field\Input::class, $input);
77  $this->assertInstanceOf(Field\Numeric::class, $input);
78  }
79 
81  {
82  $f = $this->buildFactory();
83 
84  $input = $f->section([], "label", "byline");
85  $this->assertInstanceOf(Field\Input::class, $input);
86  $this->assertInstanceOf(Field\Group::class, $input);
87  $this->assertInstanceOf(Field\Section::class, $input);
88  }
89 
91  {
92  $f = $this->buildFactory();
93 
94  $input = $f->group([]);
95  $this->assertInstanceOf(Field\Input::class, $input);
96  $this->assertInstanceOf(Field\Group::class, $input);
97  }
98 
100  {
101  $f = $this->buildFactory();
102 
103  $input = $f->checkbox("label", "byline");
104  $this->assertInstanceOf(Field\Input::class, $input);
105  $this->assertInstanceOf(Field\Checkbox::class, $input);
106  }
107 
109  {
110  $f = $this->buildFactory();
111 
112  $input = $f->tag("label", [], "byline");
113  $this->assertInstanceOf(Field\Input::class, $input);
114  $this->assertInstanceOf(Field\Tag::class, $input);
115  }
116 
118  {
119  $f = $this->buildFactory();
120 
121  $input = $f->password("label", "byline");
122  $this->assertInstanceOf(Field\Input::class, $input);
123  $this->assertInstanceOf(Field\Password::class, $input);
124  }
125 
127  {
128  $f = $this->buildFactory();
129 
130  $input = $f->select("label", [], "byline");
131  $this->assertInstanceOf(Field\Input::class, $input);
132  $this->assertInstanceOf(Field\Select::class, $input);
133  }
134 
136  {
137  $f = $this->buildFactory();
138 
139  $input = $f->textarea("label", "byline");
140  $this->assertInstanceOf(Field\Input::class, $input);
141  $this->assertInstanceOf(Field\Textarea::class, $input);
142  }
143 
145  {
146  $f = $this->buildFactory();
147 
148  $input = $f->radio("label", "byline");
149  $this->assertInstanceOf(Field\Input::class, $input);
150  $this->assertInstanceOf(Field\Radio::class, $input);
151  }
152 
154  {
155  $f = $this->buildFactory();
156 
157  $input = $f->multiSelect("label", [], "byline");
158  $this->assertInstanceOf(Field\Input::class, $input);
159  $this->assertInstanceOf(Field\MultiSelect::class, $input);
160  }
161 
163  {
164  $f = $this->buildFactory();
165 
166  $input = $f->datetime("label", "byline");
167  $this->assertInstanceOf(Field\Input::class, $input);
168  }
169 
171  {
172  $f = $this->buildFactory();
173 
174  $input = $f->duration("label", "byline");
175  $this->assertInstanceOf(Field\Input::class, $input);
176  $this->assertInstanceOf(Field\Group::class, $input);
177  }
178 
180  {
181  $f = $this->buildFactory();
182 
183  $input = $f->text("label");
184  $this->assertInstanceOf(Field\Input::class, $input);
185  $this->assertInstanceOf(Field\Text::class, $input);
186 
187  $input = $f->numeric("label");
188  $this->assertInstanceOf(Field\Input::class, $input);
189  $this->assertInstanceOf(Field\Numeric::class, $input);
190 
191  $input = $f->section([], "label");
192  $this->assertInstanceOf(Field\Input::class, $input);
193  $this->assertInstanceOf(Field\Group::class, $input);
194  $this->assertInstanceOf(Field\Section::class, $input);
195 
196  $input = $f->checkbox("label");
197  $this->assertInstanceOf(Field\Input::class, $input);
198  $this->assertInstanceOf(Field\Checkbox::class, $input);
199 
200  $input = $f->tag("label", []);
201  $this->assertInstanceOf(Field\Input::class, $input);
202  $this->assertInstanceOf(Field\Tag::class, $input);
203 
204  $input = $f->password("label");
205  $this->assertInstanceOf(Field\Input::class, $input);
206  $this->assertInstanceOf(Field\Password::class, $input);
207 
208  $input = $f->select("label", []);
209  $this->assertInstanceOf(Field\Input::class, $input);
210  $this->assertInstanceOf(Field\Select::class, $input);
211 
212  $input = $f->textarea("label");
213  $this->assertInstanceOf(Field\Input::class, $input);
214  $this->assertInstanceOf(Field\Textarea::class, $input);
215 
216  $input = $f->radio("label");
217  $this->assertInstanceOf(Field\Input::class, $input);
218  $this->assertInstanceOf(Field\Radio::class, $input);
219 
220  $input = $f->multiSelect("label", []);
221  $this->assertInstanceOf(Field\Input::class, $input);
222  $this->assertInstanceOf(Field\MultiSelect::class, $input);
223  }
224 }
testImplementsFactoryInterfaceForPassword()
Class ChatMainBarProvider .
testImplementsFactoryInterfaceForNumeric()
testImplementsFactoryInterfaceForMultiselect()
Defines tests every SHOULD pass UI-factory.
testImplementsFactoryInterfaceForDuration()
Builds data types.
Definition: Factory.php:19
testImplementsFactoryInterfaceForDatetime()
testImplementsFactoryInterfaceForTextarea()
testImplementsFactoryInterfaceForSection()
testImplementsFactoryInterfaceForCheckbox()
testImplementsFactoryInterfaceForGroup()