ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
RatingInputTest Class Reference
+ Inheritance diagram for RatingInputTest:
+ Collaboration diagram for RatingInputTest:

Public Member Functions

 setUp ()
 
 testRatingImplementsFactoryInterface ()
 
 testRatingRenderBasic ()
 
 testRatingRenderFull ()
 
 testCommonRendering ()
 
 testRatingAverage ()
 
 testRatingAverageException ()
 

Protected Member Functions

 buildRating ()
 

Protected Attributes

DefNamesource $name_source
 

Detailed Description

Definition at line 32 of file RatingInputTest.php.

Member Function Documentation

◆ buildRating()

RatingInputTest::buildRating ( )
protected

Definition at line 43 of file RatingInputTest.php.

44 {
45 $f = $this->getFieldFactory();
46 $label = "label";
47 $byline = "byline";
48 return $f
49 ->rating($label, $byline)
50 ->withNameFrom($this->name_source);
51 }
This describes inputs that can be used in forms.
Definition: FormInput.php:33

References Vendor\Package\$f.

Referenced by testRatingAverage(), testRatingAverageException(), testRatingRenderBasic(), and testRatingRenderFull().

+ Here is the caller graph for this function:

◆ setUp()

RatingInputTest::setUp ( )

Definition at line 38 of file RatingInputTest.php.

38 : void
39 {
40 $this->name_source = new DefNamesource();
41 }

◆ testCommonRendering()

RatingInputTest::testCommonRendering ( )

Definition at line 156 of file RatingInputTest.php.

156 : void
157 {
158 $f = $this->getFieldFactory();
159 $rating = $f->rating("label", null)->withNameFrom($this->name_source);
160
161 $this->testWithError($rating);
162 $this->testWithNoByline($rating);
163 $this->testWithRequired($rating);
164 $this->testWithDisabled($rating);
165 $this->testWithAdditionalOnloadCodeRendersId($rating);
166 }

References Vendor\Package\$f.

◆ testRatingAverage()

RatingInputTest::testRatingAverage ( )

Definition at line 168 of file RatingInputTest.php.

168 : void
169 {
170 $rating = $this->buildRating();
171 $this->assertNull($rating->getCurrentAverage());
172 $this->assertEquals(2.1, $rating->withCurrentAverage(2.1)->getCurrentAverage());
173 }

References buildRating().

+ Here is the call graph for this function:

◆ testRatingAverageException()

RatingInputTest::testRatingAverageException ( )

Definition at line 175 of file RatingInputTest.php.

175 : void
176 {
177 $this->expectException(\InvalidArgumentException::class);
178 $rating = $this->buildRating()->withCurrentAverage(7);
179 }

References buildRating().

+ Here is the call graph for this function:

◆ testRatingImplementsFactoryInterface()

RatingInputTest::testRatingImplementsFactoryInterface ( )

Definition at line 53 of file RatingInputTest.php.

53 : void
54 {
55 $f = $this->getFieldFactory();
56 $rating = $f->rating("label", "byline");
57 $this->assertInstanceOf(\ILIAS\UI\Component\Input\Container\Form\FormInput::class, $rating);
58 $this->assertInstanceOf(Field\Rating::class, $rating);
59 }
Interface Observer \BackgroundTasks Contains several chained tasks and infos about them.

References Vendor\Package\$f.

◆ testRatingRenderBasic()

RatingInputTest::testRatingRenderBasic ( )

Definition at line 61 of file RatingInputTest.php.

61 : void
62 {
63 $rating = $this->buildRating();
64 $expected = $this->getFormWrappedHtml(
65 'rating-field-input',
66 'label',
67 '
68 <fieldset class="input-group il-input-rating">
69 <legend class="il-input-rating__text" id="id_1_desc"></legend>
70 <div class="il-input-rating__stars" role="radiogroup">
71 <div class="il-input-rating__options">
72 <input aria-describedby="id_1_desc" type="radio" id="id_1-5" name="name_0" value="5" class="il-input-rating-scaleoption" />
73 <label class="glyphicon-star il-input-rating-star" for="id_1-5" aria-label="5stars"></label>
74
75 <input aria-describedby="id_1_desc" type="radio" id="id_1-4" name="name_0" value="4" class="il-input-rating-scaleoption" />
76 <label class="glyphicon-star il-input-rating-star" for="id_1-4" aria-label="4stars"></label>
77
78 <input aria-describedby="id_1_desc" type="radio" id="id_1-3" name="name_0" value="3" class="il-input-rating-scaleoption" />
79 <label class="glyphicon-star il-input-rating-star" for="id_1-3" aria-label="3stars"></label>
80
81 <input aria-describedby="id_1_desc" type="radio" id="id_1-2" name="name_0" value="2" class="il-input-rating-scaleoption" />
82 <label class="glyphicon-star il-input-rating-star" for="id_1-2" aria-label="2stars"></label>
83
84 <input aria-describedby="id_1_desc" type="radio" id="id_1-1" name="name_0" value="1" class="il-input-rating-scaleoption" />
85 <label class="glyphicon-star il-input-rating-star" for="id_1-1" aria-label="1stars"></label>
86 </div>
87 <div class="il-input-rating__none">
88 <label for="id_1-0" aria-label="reset_stars">reset_stars</label>
89 <input aria-describedby="id_1_desc" type="radio" id="id_1-0" name="name_0" value="0" checked="checked"/>
90 </div>
91 </div>
92 </fieldset>
93 ',
94 'byline',
95 null
96 );
97 $this->assertEquals($expected, $this->render($rating));
98 }

References buildRating().

+ Here is the call graph for this function:

◆ testRatingRenderFull()

RatingInputTest::testRatingRenderFull ( )

Definition at line 100 of file RatingInputTest.php.

100 : void
101 {
102 $rating = $this->buildRating()
103 ->withAdditionalText('question text')
104 ->withDisabled(true)
105 ->withValue(FiveStarRatingScale::GOOD)
106 ->withCurrentAverage(3);
107
108 $expected = $this->brutallyTrimHTML(
109 '<fieldset class="c-input" data-il-ui-component="rating-field-input" data-il-ui-input-name="name_0" disabled="disabled" tabindex="0">
110 <label>label</label>
111 <div class="c-input__field">
112
113 <fieldset class="input-group il-input-rating disabled">
114 <legend class="il-input-rating__text" id="id_1_desc">question text</legend>
115
116 <div class="il-input-rating__stars" role="radiogroup">
117
118 <div class="il-input-rating__options" title="rating_average">
119
120 <div class="il-input-rating__average">
121 <div class="il-input-rating__average_value" style="width:60%;"></div>
122 </div>
123
124 <input aria-describedby="id_1_desc" type="radio" id="id_1-5" name="name_0" value="5" class="il-input-rating-scaleoption" disabled="disabled"/>
125 <label class="glyphicon-star il-input-rating-star" for="id_1-5" aria-label="5stars"></label>
126
127 <input aria-describedby="id_1_desc" type="radio" id="id_1-4" name="name_0" value="4" class="il-input-rating-scaleoption" disabled="disabled" checked="checked"/>
128 <label class="glyphicon-star il-input-rating-star" for="id_1-4" aria-label="4stars"></label>
129
130 <input aria-describedby="id_1_desc" type="radio" id="id_1-3" name="name_0" value="3" class="il-input-rating-scaleoption" disabled="disabled"/>
131 <label class="glyphicon-star il-input-rating-star" for="id_1-3" aria-label="3stars"></label>
132
133 <input aria-describedby="id_1_desc" type="radio" id="id_1-2" name="name_0" value="2" class="il-input-rating-scaleoption" disabled="disabled"/>
134 <label class="glyphicon-star il-input-rating-star" for="id_1-2" aria-label="2stars"></label>
135
136 <input aria-describedby="id_1_desc" type="radio" id="id_1-1" name="name_0" value="1" class="il-input-rating-scaleoption" disabled="disabled"/>
137 <label class="glyphicon-star il-input-rating-star" for="id_1-1" aria-label="1stars"></label>
138 </div>
139
140 <div class="il-input-rating__none">
141 <label for="id_1-0" aria-label="reset_stars">reset_stars</label>
142 <input aria-describedby="id_1_desc" type="radio" id="id_1-0" name="name_0" value="0" />
143 </div>
144
145 </div>
146 </fieldset>
147
148 </div>
149 <div class="c-input__help-byline">byline</div>
150 </fieldset>'
151 );
152
153 $this->assertEquals($expected, $this->render($rating));
154 }

References buildRating().

+ Here is the call graph for this function:

Field Documentation

◆ $name_source

DefNamesource RatingInputTest::$name_source
protected

Definition at line 36 of file RatingInputTest.php.


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