| 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(
  |