mirror of
https://github.com/moodle/moodle.git
synced 2025-01-19 14:27:22 +01:00
0ed53be9b2
This issue just goes over all the currently incorrect namespaces in test cases and: 1. Change the namespace to the correct one. 2. Move/rename it to correct location if needed (level 2 and down). 3. Remove not needed MOODLE_INTERNAL check when possible. 4. Remove file phpdoc when the file only has one class. 5. Make small adjustments in case the change of namespace requires it.
654 lines
25 KiB
PHP
654 lines
25 KiB
PHP
<?php
|
|
// This file is part of Moodle - http://moodle.org/
|
|
//
|
|
// Moodle is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
//
|
|
// Moodle is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
/**
|
|
* Unit tests for core_grades\component_gradeitems;
|
|
*
|
|
* @package core_grades
|
|
* @category test
|
|
* @copyright 2019 Andrew Nicols <andrew@nicols.co.uk>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
|
|
*/
|
|
|
|
declare(strict_types = 1);
|
|
|
|
namespace core_grades {
|
|
|
|
use advanced_testcase;
|
|
use core_grades\component_gradeitems;
|
|
use coding_exception;
|
|
|
|
/**
|
|
* Unit tests for core_grades\component_gradeitems;
|
|
*
|
|
* @package core_grades
|
|
* @category test
|
|
* @copyright 2019 Andrew Nicols <andrew@nicols.co.uk>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
*/
|
|
class component_gradeitems_test extends advanced_testcase {
|
|
|
|
/**
|
|
* Ensure that a component which does not implement the mapping class excepts.
|
|
*/
|
|
public function test_get_itemname_mapping_for_component_does_not_exist(): void {
|
|
$mappings = component_gradeitems::get_itemname_mapping_for_component('invalid_component');
|
|
$this->assertIsArray($mappings);
|
|
$this->assertCount(1, $mappings);
|
|
$this->assertArrayHasKey(0, $mappings);
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not implement the mapping class correctly excepts.
|
|
*/
|
|
public function test_get_itemname_mapping_for_valid_component_invalid_mapping(): void {
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemname_mapping_for_component('tests\core_grades\component_gradeitems\invalid');
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which implements the mapping class correctly eets the correct set of mappings.
|
|
*/
|
|
public function test_get_itemname_mapping_for_valid_component_valid_mapping(): void {
|
|
$mapping = component_gradeitems::get_itemname_mapping_for_component('tests\core_grades\component_gradeitems\valid');
|
|
$this->assertIsArray($mapping);
|
|
$this->assertEquals([
|
|
0 => 'rating',
|
|
1 => 'someother',
|
|
], $mapping);
|
|
}
|
|
|
|
/**
|
|
* Data provider for is_valid_itemname tests.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function is_valid_itemname_provider(): array {
|
|
return [
|
|
'valid' => [
|
|
'someother',
|
|
true,
|
|
],
|
|
'validnotadvanced' => [
|
|
'rating',
|
|
true,
|
|
],
|
|
'invalid' => [
|
|
'doesnotexist',
|
|
false,
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component implementing advanced grading returns the correct areas.
|
|
*
|
|
* @dataProvider is_valid_itemname_provider
|
|
* @param string $itemname
|
|
* @param bool $isadvanced
|
|
*/
|
|
public function test_is_valid_itemname(string $itemname, bool $isadvanced): void {
|
|
$this->assertEquals(
|
|
$isadvanced,
|
|
component_gradeitems::is_valid_itemname('tests\core_grades\component_gradeitems\valid_and_advanced', $itemname)
|
|
);
|
|
}
|
|
|
|
|
|
/**
|
|
* Ensure that a component which does not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_defines_advancedgrading_itemnames_for_component_does_not_exist(): void {
|
|
$this->assertFalse(component_gradeitems::defines_advancedgrading_itemnames_for_component('invalid_component'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_defines_advancedgrading_itemnames_for_component_no_interfaces(): void {
|
|
$this->assertFalse(component_gradeitems::defines_advancedgrading_itemnames_for_component('tests\core_grades\component_gradeitems\invalid'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which implements the item mapping but not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_defines_advancedgrading_itemnames_for_component_grading_no_interface(): void {
|
|
$this->assertFalse(component_gradeitems::defines_advancedgrading_itemnames_for_component('tests\core_grades\component_gradeitems\valid'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which implements the item mapping but not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_defines_advancedgrading_itemnames_for_component_grading_has_interface(): void {
|
|
$this->assertTrue(component_gradeitems::defines_advancedgrading_itemnames_for_component('tests\core_grades\component_gradeitems\valid_and_advanced'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_get_advancedgrading_itemnames_for_component_does_not_exist(): void {
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_advancedgrading_itemnames_for_component('invalid_component');
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_get_advancedgrading_itemnames_for_component_no_interfaces(): void {
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_advancedgrading_itemnames_for_component('tests\core_grades\component_gradeitems\invalid');
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which implements the item mapping but not implement the advancedgrading interface returns this.
|
|
*/
|
|
public function test_get_advancedgrading_itemnames_for_component_grading_no_interface(): void {
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_advancedgrading_itemnames_for_component('tests\core_grades\component_gradeitems\valid');
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component implementing advanced grading returns the correct areas.
|
|
*/
|
|
public function test_get_advancedgrading_itemnames_for_component(): void {
|
|
$areas = component_gradeitems::get_advancedgrading_itemnames_for_component('tests\core_grades\component_gradeitems\valid_and_advanced');
|
|
$this->assertEquals(['someother'], $areas);
|
|
}
|
|
|
|
/**
|
|
* Data provider for is_advancedgrading_itemname tests.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function is_advancedgrading_itemname_provider(): array {
|
|
return [
|
|
'valid' => [
|
|
'someother',
|
|
true,
|
|
],
|
|
'validnotadvanced' => [
|
|
'rating',
|
|
false,
|
|
],
|
|
'invalid' => [
|
|
'doesnotexist',
|
|
false,
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component implementing advanced grading returns the correct areas.
|
|
*
|
|
* @dataProvider is_advancedgrading_itemname_provider
|
|
* @param string $itemname
|
|
* @param bool $isadvanced
|
|
*/
|
|
public function test_is_advancedgrading_itemname(string $itemname, bool $isadvanced): void {
|
|
$this->assertEquals(
|
|
$isadvanced,
|
|
component_gradeitems::is_advancedgrading_itemname('tests\core_grades\component_gradeitems\valid_and_advanced', $itemname)
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Data provider for get_field_name_for_itemnumber.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function get_field_name_for_itemnumber_provider(): array {
|
|
return [
|
|
'Valid itemnumber 0 case 1' => [
|
|
0,
|
|
'gradecat',
|
|
'gradecat',
|
|
],
|
|
'Valid itemnumber 0 case 2' => [
|
|
0,
|
|
'melon',
|
|
'melon',
|
|
],
|
|
'Valid itemnumber 1 case 1' => [
|
|
1,
|
|
'gradecat',
|
|
'gradecat_someother',
|
|
],
|
|
'Valid itemnumber 1 case 2' => [
|
|
1,
|
|
'melon',
|
|
'melon_someother',
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Ensure that valid field names are correctly mapped for a valid component.
|
|
*
|
|
* @dataProvider get_field_name_for_itemnumber_provider
|
|
* @param int $itemnumber The item itemnumber to test
|
|
* @param string $fieldname The field name being translated
|
|
* @param string $expected The expected value
|
|
*/
|
|
public function test_get_field_name_for_itemnumber(int $itemnumber, string $fieldname, string $expected): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
$this->assertEquals($expected, component_gradeitems::get_field_name_for_itemnumber($component, $itemnumber, $fieldname));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an invalid itemnumber does not provide any field name.
|
|
*/
|
|
public function test_get_field_name_for_itemnumber_invalid_itemnumber(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_field_name_for_itemnumber($component, 100, 'gradecat');
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not define a mapping can still get a mapping for itemnumber 0.
|
|
*/
|
|
public function test_get_field_name_for_itemnumber_component_not_defining_mapping_itemnumber_zero(): void {
|
|
$component = 'tests\core_grades\othervalid';
|
|
|
|
$this->assertEquals('gradecat', component_gradeitems::get_field_name_for_itemnumber($component, 0, 'gradecat'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not define a mapping cannot get a mapping for itemnumber 1+.
|
|
*/
|
|
public function test_get_field_name_for_itemnumber_component_not_defining_mapping_itemnumber_nonzero(): void {
|
|
$component = 'tests\core_grades\othervalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_field_name_for_itemnumber($component, 100, 'gradecat');
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which incorrectly defines a mapping cannot get a mapping for itemnumber 1+.
|
|
*/
|
|
public function test_get_field_name_for_itemnumber_component_invalid_mapping_itemnumber_nonzero(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\invalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_field_name_for_itemnumber($component, 100, 'gradecat');
|
|
}
|
|
|
|
/**
|
|
* Data provider for get_field_name_for_itemname.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function get_field_name_for_itemname_provider(): array {
|
|
return [
|
|
'Empty itemname empty case 1' => [
|
|
'',
|
|
'gradecat',
|
|
'gradecat',
|
|
],
|
|
'Empty itemname empty case 2' => [
|
|
'',
|
|
'melon',
|
|
'melon',
|
|
],
|
|
'First itemname empty case 1' => [
|
|
'rating',
|
|
'gradecat',
|
|
'gradecat',
|
|
],
|
|
'First itemname empty case 2' => [
|
|
'rating',
|
|
'melon',
|
|
'melon',
|
|
],
|
|
'Other itemname empty case 1' => [
|
|
'someother',
|
|
'gradecat',
|
|
'gradecat_someother',
|
|
],
|
|
'Other itemname empty case 2' => [
|
|
'someother',
|
|
'melon',
|
|
'melon_someother',
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Ensure that valid field names are correctly mapped for a valid component.
|
|
*
|
|
* @dataProvider get_field_name_for_itemname_provider
|
|
* @param string $itemname The item itemname to test
|
|
* @param string $fieldname The field name being translated
|
|
* @param string $expected The expected value
|
|
*/
|
|
public function test_get_field_name_for_itemname(string $itemname, string $fieldname, string $expected): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
$this->assertEquals($expected, component_gradeitems::get_field_name_for_itemname($component, $itemname, $fieldname));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an invalid itemname does not provide any field name.
|
|
*/
|
|
public function test_get_field_name_for_itemname_invalid_itemname(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_field_name_for_itemname($component, 'typo', 'gradecat');
|
|
}
|
|
|
|
/**
|
|
* Ensure that an empty itemname provides a matching fieldname regardless of whether the component exists or
|
|
* not.
|
|
*/
|
|
public function test_get_field_name_for_itemname_not_defining_mapping_empty_name(): void {
|
|
$component = 'tests\core_grades\othervalid';
|
|
|
|
$this->assertEquals('gradecat', component_gradeitems::get_field_name_for_itemname($component, '', 'gradecat'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an valid component with some itemname excepts.
|
|
*/
|
|
public function test_get_field_name_for_itemname_not_defining_mapping_with_name(): void {
|
|
$component = 'tests\core_grades\othervalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_field_name_for_itemname($component, 'example', 'gradecat');
|
|
}
|
|
|
|
/**
|
|
* Ensure that an empty itemname provides a matching fieldname even if the mapping is invalid.
|
|
*/
|
|
public function test_get_field_name_for_itemname_invalid_mapping_empty_name(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\invalid';
|
|
|
|
$this->assertEquals('gradecat', component_gradeitems::get_field_name_for_itemname($component, '', 'gradecat'));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an invalid mapping with some itemname excepts.
|
|
*/
|
|
public function test_get_field_name_for_itemname_invalid_mapping_with_name(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\invalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_field_name_for_itemname($component, 'example', 'gradecat');
|
|
}
|
|
|
|
/**
|
|
* Data provider for get_itemname_from_itemnumber.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function get_itemname_from_itemnumber_provider(): array {
|
|
return [
|
|
'Valid itemnumber 0' => [
|
|
0,
|
|
'',
|
|
],
|
|
'Valid itemnumber 1' => [
|
|
1,
|
|
'someother',
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Ensure that item names are correctly mapped for a valid component.
|
|
*
|
|
* @dataProvider get_itemname_from_itemnumber_provider
|
|
* @param int $itemnumber The item itemnumber to test
|
|
* @param string $expected The expected value
|
|
*/
|
|
public function test_get_itemname_from_itemnumber(int $itemnumber, string $expected): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
$this->assertEquals($expected, component_gradeitems::get_itemname_from_itemnumber($component, $itemnumber));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an itemnumber over 1000 is treated as itemnumber 0 for the purpose of outcomes.
|
|
*/
|
|
public function test_get_itemname_from_itemnumber_outcome_itemnumber(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
|
|
$this->assertEquals('', component_gradeitems::get_itemname_from_itemnumber($component, 1000));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an invalid itemnumber does not provide any field name.
|
|
*/
|
|
public function test_get_itemname_from_itemnumber_invalid_itemnumber(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemname_from_itemnumber($component, 100);
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not define a mapping can still get a mapping for itemnumber 0.
|
|
*/
|
|
public function test_get_itemname_from_itemnumber_component_not_defining_mapping_itemnumber_zero(): void {
|
|
$component = 'tests\core_grades\othervalid';
|
|
|
|
$this->assertEquals('', component_gradeitems::get_itemname_from_itemnumber($component, 0));
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which does not define a mapping cannot get a mapping for itemnumber 1+.
|
|
*/
|
|
public function test_get_itemname_from_itemnumber_component_not_defining_mapping_itemnumber_nonzero(): void {
|
|
$component = 'tests\core_grades\othervalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemname_from_itemnumber($component, 100);
|
|
}
|
|
|
|
/**
|
|
* Ensure that a component which incorrectly defines a mapping cannot get a mapping for itemnumber 1+.
|
|
*/
|
|
public function test_get_itemname_from_itemnumber_component_invalid_mapping_itemnumber_nonzero(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\invalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemname_from_itemnumber($component, 100);
|
|
}
|
|
|
|
/**
|
|
* Data provider for get_itemname_from_itemnumber.
|
|
*
|
|
* @return array
|
|
*/
|
|
public function get_itemnumber_from_itemname_provider(): array {
|
|
return [
|
|
'Empty itemname empty' => [
|
|
'',
|
|
0,
|
|
],
|
|
'First itemname empty' => [
|
|
'rating',
|
|
0,
|
|
],
|
|
'Other itemname empty' => [
|
|
'someother',
|
|
1,
|
|
],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Ensure that valid item names are correctly mapped for a valid component.
|
|
*
|
|
* @dataProvider get_itemnumber_from_itemname_provider
|
|
* @param string $itemname The item itemname to test
|
|
* @param int $expected The expected value
|
|
*/
|
|
public function test_get_itemnumber_from_itemname(string $itemname, int $expected): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
$this->assertEquals($expected, component_gradeitems::get_itemnumber_from_itemname($component, $itemname));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an invalid itemname excepts.
|
|
*/
|
|
public function test_get_itemnumber_from_itemname_invalid_itemname(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\valid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemnumber_from_itemname($component, 'typo');
|
|
}
|
|
|
|
/**
|
|
* Ensure that an empty itemname provides a correct itemnumber regardless of whether the component exists or
|
|
* not.
|
|
*/
|
|
public function test_get_itemnumber_from_itemname_not_defining_mapping_empty_name(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\othervalid';
|
|
|
|
$this->assertEquals(0, component_gradeitems::get_itemnumber_from_itemname($component, ''));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an valid component with some itemname excepts.
|
|
*/
|
|
public function test_get_itemnumber_from_itemname_not_defining_mapping_with_name(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\othervalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemnumber_from_itemname($component, 'example');
|
|
}
|
|
|
|
/**
|
|
* Ensure that an empty itemname provides a matching fieldname even if the mapping is invalid.
|
|
*/
|
|
public function test_get_itemnumber_from_itemname_invalid_mapping_empty_name(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\invalid';
|
|
|
|
$this->assertEquals(0, component_gradeitems::get_itemnumber_from_itemname($component, ''));
|
|
}
|
|
|
|
/**
|
|
* Ensure that an invalid mapping with some itemname excepts.
|
|
*/
|
|
public function test_get_itemnumber_from_itemname_invalid_mapping_with_name(): void {
|
|
$component = 'tests\core_grades\component_gradeitems\invalid';
|
|
|
|
$this->expectException(coding_exception::class);
|
|
component_gradeitems::get_itemnumber_from_itemname($component, 'example');
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace tests\core_grades\component_gradeitems\valid\grades {
|
|
use core_grades\local\gradeitem\itemnumber_mapping;
|
|
|
|
/**
|
|
* Valid class for testing mappings.
|
|
*
|
|
* @package core_grades
|
|
* @category test
|
|
* @copyright 2019 Andrew Nicols <andrew@nicols.co.uk>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
*/
|
|
class gradeitems implements itemnumber_mapping {
|
|
/**
|
|
* Get the grade item mapping of item number to item name.
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function get_itemname_mapping_for_component(): array {
|
|
return [
|
|
0 => 'rating',
|
|
1 => 'someother',
|
|
];
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace tests\core_grades\component_gradeitems\valid_and_advanced\grades {
|
|
use core_grades\local\gradeitem\itemnumber_mapping;
|
|
use core_grades\local\gradeitem\advancedgrading_mapping;
|
|
|
|
/**
|
|
* Valid class for testing mappings.
|
|
*
|
|
* @package core_grades
|
|
* @category test
|
|
* @copyright 2019 Andrew Nicols <andrew@nicols.co.uk>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
*/
|
|
class gradeitems implements itemnumber_mapping, advancedgrading_mapping {
|
|
/**
|
|
* Get the grade item mapping of item number to item name.
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function get_itemname_mapping_for_component(): array {
|
|
return [
|
|
0 => 'rating',
|
|
1 => 'someother',
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Get the list of items which define advanced grading.
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function get_advancedgrading_itemnames(): array {
|
|
return [
|
|
'someother',
|
|
];
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace tests\core_grades\component_gradeitems\invalid\grades {
|
|
use core_grades\local\gradeitem\itemnumber_mapping;
|
|
|
|
/**
|
|
* Invalid class for testing mappings.
|
|
*
|
|
* @package core_grades
|
|
* @category test
|
|
* @copyright 2019 Andrew Nicols <andrew@nicols.co.uk>
|
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
|
*/
|
|
class gradeitems {
|
|
/**
|
|
* Get the grade item mapping of item number to item name.
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function get_itemname_mapping_for_component(): array {
|
|
return [
|
|
0 => 'rating',
|
|
1 => 'someother',
|
|
];
|
|
}
|
|
|
|
/**
|
|
* Get the list of items which define advanced grading.
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function get_advancedgrading_itemnames(): array {
|
|
return [
|
|
1 => 'someother',
|
|
];
|
|
}
|
|
}
|
|
}
|