Merge branch 'MDL-77659_401' of https://github.com/AnupamaSarjoshi/moodle into MOODLE_401_STABLE

This commit is contained in:
Sara Arjona 2023-03-27 16:50:31 +02:00
commit 0d6eaef200

View File

@ -81,38 +81,54 @@ class user_profile_fields_test extends core_reportbuilder_testcase {
public function test_get_columns(): void {
$this->resetAfterTest();
$userentity = new user();
$useralias = $userentity->get_table_alias('user');
// Get pre-existing user profile fields.
$initialuserprofilefields = new user_profile_fields("$useralias.id", $userentity->get_entity_name());
$initialcolumns = $initialuserprofilefields->get_columns();
$initialcolumntitles = array_map(static function(column $column): string {
return $column->get_title();
}, $initialcolumns);
$initialcolumntypes = array_map(static function(column $column): int {
return $column->get_type();
}, $initialcolumns);
// Add new custom profile fields.
$userprofilefields = $this->generate_userprofilefields();
$columns = $userprofilefields->get_columns();
$this->assertCount(6, $columns);
// Columns count should be equal to start + 6.
$this->assertCount(count($initialcolumns) + 6, $columns);
$this->assertContainsOnlyInstancesOf(column::class, $columns);
// Assert column titles.
$columntitles = array_map(static function(column $column): string {
return $column->get_title();
}, $columns);
$this->assertEquals([
$expectedcolumntitles = array_merge($initialcolumntitles, [
'Checkbox field',
'Date field',
'Menu field',
'MSN ID',
'Text field',
'Textarea field',
], $columntitles);
]);
$this->assertEquals($expectedcolumntitles, $columntitles);
// Assert column types.
$columntypes = array_map(static function(column $column): int {
return $column->get_type();
}, $columns);
$this->assertEquals([
$expectedcolumntypes = array_merge($initialcolumntypes, [
column::TYPE_BOOLEAN,
column::TYPE_TIMESTAMP,
column::TYPE_TEXT,
column::TYPE_TEXT,
column::TYPE_TEXT,
column::TYPE_LONGTEXT,
], $columntypes);
]);
$this->assertEquals($expectedcolumntypes, $columntypes);
}
/**
@ -151,24 +167,37 @@ class user_profile_fields_test extends core_reportbuilder_testcase {
public function test_get_filters(): void {
$this->resetAfterTest();
$userentity = new user();
$useralias = $userentity->get_table_alias('user');
// Get pre-existing user profile fields.
$initialuserprofilefields = new user_profile_fields("$useralias.id", $userentity->get_entity_name());
$initialfilters = $initialuserprofilefields->get_filters();
$initialfilterheaders = array_map(static function(filter $filter): string {
return $filter->get_header();
}, $initialfilters);
// Add new custom profile fields.
$userprofilefields = $this->generate_userprofilefields();
$filters = $userprofilefields->get_filters();
$this->assertCount(6, $filters);
// Filters count should be equal to start + 6.
$this->assertCount(count($initialfilters) + 6, $filters);
$this->assertContainsOnlyInstancesOf(filter::class, $filters);
// Assert filter headers.
$filterheaders = array_map(static function(filter $filter): string {
return $filter->get_header();
}, $filters);
$this->assertEquals([
$expectedfilterheaders = array_merge($initialfilterheaders, [
'Checkbox field',
'Date field',
'Menu field',
'MSN ID',
'Text field',
'Textarea field',
], $filterheaders);
]);
$this->assertEquals($expectedfilterheaders, $filterheaders);
}
/**