mirror of
https://github.com/moodle/moodle.git
synced 2025-03-19 15:10:05 +01:00
Merge branch 'MDL-78140' of https://github.com/paulholden/moodle
This commit is contained in:
commit
f35db64f81
@ -29,6 +29,7 @@ require_once(__DIR__ . '/fixtures/test_target_course_level_shortname.php');
|
||||
* @package core_analytics
|
||||
* @copyright 2017 David Monllaó {@link http://www.davidmonllao.com}
|
||||
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||
* @covers \core_analytics\manager
|
||||
*/
|
||||
class manager_test extends \advanced_testcase {
|
||||
|
||||
@ -491,25 +492,63 @@ class manager_test extends \advanced_testcase {
|
||||
// No potential context restrictions.
|
||||
$this->assertFalse(\core_analytics\manager::get_potential_context_restrictions([]));
|
||||
|
||||
$defaultcategory = \core_course_category::get_default();
|
||||
$defaultcategorycontext = $defaultcategory->get_context();
|
||||
|
||||
// Include the all context levels so the misc. category get included.
|
||||
$this->assertCount(1, \core_analytics\manager::get_potential_context_restrictions());
|
||||
$this->assertEquals([
|
||||
$defaultcategorycontext->id => "Category: {$defaultcategory->name}",
|
||||
], manager::get_potential_context_restrictions());
|
||||
|
||||
$this->getDataGenerator()->create_course();
|
||||
$this->getDataGenerator()->create_category();
|
||||
$this->assertCount(3, \core_analytics\manager::get_potential_context_restrictions());
|
||||
$this->assertCount(3, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSE, CONTEXT_COURSECAT]));
|
||||
$category = $this->getDataGenerator()->create_category(['name' => 'My category']);
|
||||
$categorycontext = $category->get_context();
|
||||
|
||||
$this->assertCount(1, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSE]));
|
||||
$this->assertCount(2, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSECAT]));
|
||||
$courseone = $this->getDataGenerator()->create_course(['fullname' => 'Course one', 'shortname' => 'CS1']);
|
||||
$courseonecontext = \context_course::instance($courseone->id);
|
||||
|
||||
$this->assertCount(1, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSECAT], 'Course category'));
|
||||
$this->assertCount(1, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSECAT], 'Course category 1'));
|
||||
$this->assertCount(
|
||||
2,
|
||||
\core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSECAT],
|
||||
get_string('defaultcategoryname')
|
||||
));
|
||||
$this->assertCount(1, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSE], 'Test course 1'));
|
||||
$this->assertCount(1, \core_analytics\manager::get_potential_context_restrictions([CONTEXT_COURSE], 'Test course'));
|
||||
$coursetwo = $this->getDataGenerator()->create_course(['fullname' => 'Course two', 'shortname' => 'CS2']);
|
||||
$coursetwocontext = \context_course::instance($coursetwo->id);
|
||||
|
||||
// All context levels.
|
||||
$this->assertEqualsCanonicalizing([
|
||||
$defaultcategorycontext->id => "Category: {$defaultcategory->name}",
|
||||
$categorycontext->id => "Category: {$category->name}",
|
||||
$courseonecontext->id => "Course: {$courseone->shortname}",
|
||||
$coursetwocontext->id => "Course: {$coursetwo->shortname}",
|
||||
], manager::get_potential_context_restrictions());
|
||||
|
||||
// All category/course context levels.
|
||||
$this->assertEqualsCanonicalizing([
|
||||
$defaultcategorycontext->id => "Category: {$defaultcategory->name}",
|
||||
$categorycontext->id => "Category: {$category->name}",
|
||||
$courseonecontext->id => "Course: {$courseone->shortname}",
|
||||
$coursetwocontext->id => "Course: {$coursetwo->shortname}",
|
||||
], manager::get_potential_context_restrictions([CONTEXT_COURSECAT, CONTEXT_COURSE]));
|
||||
|
||||
// All category context levels.
|
||||
$this->assertEqualsCanonicalizing([
|
||||
$defaultcategorycontext->id => "Category: {$defaultcategory->name}",
|
||||
$categorycontext->id => "Category: {$category->name}",
|
||||
], manager::get_potential_context_restrictions([CONTEXT_COURSECAT]));
|
||||
|
||||
// Filtered category context levels.
|
||||
$this->assertEquals([
|
||||
$categorycontext->id => "Category: {$category->name}",
|
||||
], manager::get_potential_context_restrictions([CONTEXT_COURSECAT], 'My cat'));
|
||||
|
||||
$this->assertEmpty(manager::get_potential_context_restrictions([CONTEXT_COURSECAT], 'nothing'));
|
||||
|
||||
// All course context levels.
|
||||
$this->assertEqualsCanonicalizing([
|
||||
$courseonecontext->id => "Course: {$courseone->shortname}",
|
||||
$coursetwocontext->id => "Course: {$coursetwo->shortname}",
|
||||
], manager::get_potential_context_restrictions([CONTEXT_COURSE]));
|
||||
|
||||
// Filtered course context levels.
|
||||
$this->assertEquals([
|
||||
$courseonecontext->id => "Course: {$courseone->shortname}",
|
||||
], manager::get_potential_context_restrictions([CONTEXT_COURSE], 'one'));
|
||||
|
||||
$this->assertEmpty(manager::get_potential_context_restrictions([CONTEXT_COURSE], 'nothing'));
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user