| Línea 64... |
Línea 64... |
| 64 |
$this->workshop = null;
|
64 |
$this->workshop = null;
|
| 65 |
$this->evaluator = null;
|
65 |
$this->evaluator = null;
|
| 66 |
parent::tearDown();
|
66 |
parent::tearDown();
|
| 67 |
}
|
67 |
}
|
| Línea 68... |
Línea 68... |
| 68 |
|
68 |
|
| 69 |
public function test_normalize_grades() {
|
69 |
public function test_normalize_grades(): void {
|
| 70 |
// fixture set-up
|
70 |
// fixture set-up
|
| 71 |
$assessments = array();
|
71 |
$assessments = array();
|
| 72 |
$assessments[1] = (object)array(
|
72 |
$assessments[1] = (object)array(
|
| 73 |
'dimgrades' => array(3 => 1.0000, 4 => 13.42300),
|
73 |
'dimgrades' => array(3 => 1.0000, 4 => 13.42300),
|
| Línea 94... |
Línea 94... |
| 94 |
$this->assertEquals($norm[1]->dimgrades[4], grade_floatval(13.423 / 20 * 100));
|
94 |
$this->assertEquals($norm[1]->dimgrades[4], grade_floatval(13.423 / 20 * 100));
|
| 95 |
$this->assertEquals($norm[3]->dimgrades[4], grade_floatval(19.1 / 20 * 100));
|
95 |
$this->assertEquals($norm[3]->dimgrades[4], grade_floatval(19.1 / 20 * 100));
|
| 96 |
$this->assertEquals($norm[7]->dimgrades[4], 0);
|
96 |
$this->assertEquals($norm[7]->dimgrades[4], 0);
|
| 97 |
}
|
97 |
}
|
| Línea 98... |
Línea 98... |
| 98 |
|
98 |
|
| 99 |
public function test_normalize_grades_max_equals_min() {
|
99 |
public function test_normalize_grades_max_equals_min(): void {
|
| 100 |
// fixture set-up
|
100 |
// fixture set-up
|
| 101 |
$assessments = array();
|
101 |
$assessments = array();
|
| 102 |
$assessments[1] = (object)array(
|
102 |
$assessments[1] = (object)array(
|
| 103 |
'dimgrades' => array(3 => 100.0000),
|
103 |
'dimgrades' => array(3 => 100.0000),
|
| Línea 110... |
Línea 110... |
| 110 |
// validate
|
110 |
// validate
|
| 111 |
$this->assertEquals(gettype($norm), 'array');
|
111 |
$this->assertEquals(gettype($norm), 'array');
|
| 112 |
$this->assertEquals($norm[1]->dimgrades[3], 100);
|
112 |
$this->assertEquals($norm[1]->dimgrades[3], 100);
|
| 113 |
}
|
113 |
}
|
| Línea 114... |
Línea 114... |
| 114 |
|
114 |
|
| 115 |
public function test_average_assessment_same_weights() {
|
115 |
public function test_average_assessment_same_weights(): void {
|
| 116 |
// fixture set-up
|
116 |
// fixture set-up
|
| 117 |
$assessments = array();
|
117 |
$assessments = array();
|
| 118 |
$assessments[18] = (object)array(
|
118 |
$assessments[18] = (object)array(
|
| 119 |
'weight' => 1,
|
119 |
'weight' => 1,
|
| Línea 129... |
Línea 129... |
| 129 |
$this->assertEquals(gettype($average->dimgrades), 'array');
|
129 |
$this->assertEquals(gettype($average->dimgrades), 'array');
|
| 130 |
$this->assertEquals(grade_floatval($average->dimgrades[1]), grade_floatval(25));
|
130 |
$this->assertEquals(grade_floatval($average->dimgrades[1]), grade_floatval(25));
|
| 131 |
$this->assertEquals(grade_floatval($average->dimgrades[2]), grade_floatval(50));
|
131 |
$this->assertEquals(grade_floatval($average->dimgrades[2]), grade_floatval(50));
|
| 132 |
}
|
132 |
}
|
| Línea 133... |
Línea 133... |
| 133 |
|
133 |
|
| 134 |
public function test_average_assessment_different_weights() {
|
134 |
public function test_average_assessment_different_weights(): void {
|
| 135 |
// fixture set-up
|
135 |
// fixture set-up
|
| 136 |
$assessments = array();
|
136 |
$assessments = array();
|
| 137 |
$assessments[11] = (object)array(
|
137 |
$assessments[11] = (object)array(
|
| 138 |
'weight' => 1,
|
138 |
'weight' => 1,
|
| Línea 153... |
Línea 153... |
| 153 |
$this->assertEquals(grade_floatval($average->dimgrades[3]), grade_floatval((10.0 + 11.0*3 + 11.0)/5));
|
153 |
$this->assertEquals(grade_floatval($average->dimgrades[3]), grade_floatval((10.0 + 11.0*3 + 11.0)/5));
|
| 154 |
$this->assertEquals(grade_floatval($average->dimgrades[4]), grade_floatval((13.4 + 10.1*3 + 8.1)/5));
|
154 |
$this->assertEquals(grade_floatval($average->dimgrades[4]), grade_floatval((13.4 + 10.1*3 + 8.1)/5));
|
| 155 |
$this->assertEquals(grade_floatval($average->dimgrades[5]), grade_floatval((95.0 + 92.0*3 + 88.0)/5));
|
155 |
$this->assertEquals(grade_floatval($average->dimgrades[5]), grade_floatval((95.0 + 92.0*3 + 88.0)/5));
|
| 156 |
}
|
156 |
}
|
| Línea 157... |
Línea 157... |
| 157 |
|
157 |
|
| 158 |
public function test_average_assessment_noweight() {
|
158 |
public function test_average_assessment_noweight(): void {
|
| 159 |
// fixture set-up
|
159 |
// fixture set-up
|
| 160 |
$assessments = array();
|
160 |
$assessments = array();
|
| 161 |
$assessments[11] = (object)array(
|
161 |
$assessments[11] = (object)array(
|
| 162 |
'weight' => 0,
|
162 |
'weight' => 0,
|
| Línea 170... |
Línea 170... |
| 170 |
$average = $this->evaluator->average_assessment($assessments);
|
170 |
$average = $this->evaluator->average_assessment($assessments);
|
| 171 |
// validate
|
171 |
// validate
|
| 172 |
$this->assertNull($average);
|
172 |
$this->assertNull($average);
|
| 173 |
}
|
173 |
}
|
| Línea 174... |
Línea 174... |
| 174 |
|
174 |
|
| 175 |
public function test_weighted_variance() {
|
175 |
public function test_weighted_variance(): void {
|
| 176 |
// fixture set-up
|
176 |
// fixture set-up
|
| 177 |
$assessments[11] = (object)array(
|
177 |
$assessments[11] = (object)array(
|
| 178 |
'weight' => 1,
|
178 |
'weight' => 1,
|
| 179 |
'dimgrades' => array(3 => 11, 4 => 2),
|
179 |
'dimgrades' => array(3 => 11, 4 => 2),
|
| Línea 201... |
Línea 201... |
| 201 |
$this->assertEquals($variance[3], 0);
|
201 |
$this->assertEquals($variance[3], 0);
|
| 202 |
// dimension [4] represents data 2, 4, 4, 4, 5, 5, 7, 9 having stdev=2 (stdev is sqrt of variance)
|
202 |
// dimension [4] represents data 2, 4, 4, 4, 5, 5, 7, 9 having stdev=2 (stdev is sqrt of variance)
|
| 203 |
$this->assertEquals($variance[4], 4);
|
203 |
$this->assertEquals($variance[4], 4);
|
| 204 |
}
|
204 |
}
|
| Línea 205... |
Línea 205... |
| 205 |
|
205 |
|
| 206 |
public function test_assessments_distance_zero() {
|
206 |
public function test_assessments_distance_zero(): void {
|
| 207 |
// fixture set-up
|
207 |
// fixture set-up
|
| 208 |
$diminfo = array(
|
208 |
$diminfo = array(
|
| 209 |
3 => (object)array('weight' => 1, 'min' => 0, 'max' => 100, 'variance' => 12.34567),
|
209 |
3 => (object)array('weight' => 1, 'min' => 0, 'max' => 100, 'variance' => 12.34567),
|
| 210 |
4 => (object)array('weight' => 1, 'min' => 1, 'max' => 5, 'variance' => 98.76543),
|
210 |
4 => (object)array('weight' => 1, 'min' => 1, 'max' => 5, 'variance' => 98.76543),
|
| Línea 214... |
Línea 214... |
| 214 |
$settings = (object)array('comparison' => 5);
|
214 |
$settings = (object)array('comparison' => 5);
|
| 215 |
// exercise SUT and validate
|
215 |
// exercise SUT and validate
|
| 216 |
$this->assertEquals($this->evaluator->assessments_distance($assessment1, $assessment2, $diminfo, $settings), 0);
|
216 |
$this->assertEquals($this->evaluator->assessments_distance($assessment1, $assessment2, $diminfo, $settings), 0);
|
| 217 |
}
|
217 |
}
|
| Línea 218... |
Línea 218... |
| 218 |
|
218 |
|
| 219 |
public function test_assessments_distance_equals() {
|
219 |
public function test_assessments_distance_equals(): void {
|
| 220 |
/*
|
220 |
/*
|
| 221 |
// fixture set-up
|
221 |
// fixture set-up
|
| 222 |
$diminfo = array(
|
222 |
$diminfo = array(
|
| 223 |
3 => (object)array('weight' => 1, 'min' => 0, 'max' => 100, 'variance' => 12.34567),
|
223 |
3 => (object)array('weight' => 1, 'min' => 0, 'max' => 100, 'variance' => 12.34567),
|
| Línea 244... |
Línea 244... |
| 244 |
$this->assertEquals($this->evaluator->assessments_distance($assessment1, $referential, $diminfo, $settings),
|
244 |
$this->assertEquals($this->evaluator->assessments_distance($assessment1, $referential, $diminfo, $settings),
|
| 245 |
$this->evaluator->assessments_distance($assessment2, $referential, $diminfo, $settings));
|
245 |
$this->evaluator->assessments_distance($assessment2, $referential, $diminfo, $settings));
|
| Línea 246... |
Línea 246... |
| 246 |
|
246 |
|
| Línea 247... |
Línea 247... |
| 247 |
}
|
247 |
}
|
| 248 |
|
248 |
|
| 249 |
public function test_assessments_distance_zero_variance() {
|
249 |
public function test_assessments_distance_zero_variance(): void {
|
| 250 |
// Fixture set-up: an assessment form of the strategy "Number of errors",
|
250 |
// Fixture set-up: an assessment form of the strategy "Number of errors",
|
| 251 |
// three assertions, same weight.
|
251 |
// three assertions, same weight.
|
| 252 |
$diminfo = array(
|
252 |
$diminfo = array(
|