__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
// This file is part of Moodle - https://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 <https://www.gnu.org/licenses/>.
namespace core;
/**
* Unit tests for context helper class.
*
* NOTE: more tests are in lib/tests/accesslib_test.php
*
* @package core
* @copyright Petr Skoda
* @license https://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @coversDefaultClass \core\context_helper
*/
final class context_helper_test extends \advanced_testcase {
/**
* Tests covered method.
* @covers ::parse_external_level
*/
public function test_parse_external_level(): void {
$this->assertSame(context\system::class, context_helper::parse_external_level('system'));
$this->assertSame(context\system::class, context_helper::parse_external_level(CONTEXT_SYSTEM));
$this->assertSame(context\system::class, context_helper::parse_external_level((string)CONTEXT_SYSTEM));
$this->assertSame(context\user::class, context_helper::parse_external_level('user'));
$this->assertSame(context\user::class, context_helper::parse_external_level(CONTEXT_USER));
$this->assertSame(context\user::class, context_helper::parse_external_level((string)CONTEXT_USER));
$this->assertSame(context\coursecat::class, context_helper::parse_external_level('coursecat'));
$this->assertSame(context\coursecat::class, context_helper::parse_external_level(CONTEXT_COURSECAT));
$this->assertSame(context\coursecat::class, context_helper::parse_external_level((string)CONTEXT_COURSECAT));
$this->assertSame(context\course::class, context_helper::parse_external_level('course'));
$this->assertSame(context\course::class, context_helper::parse_external_level(CONTEXT_COURSE));
$this->assertSame(context\course::class, context_helper::parse_external_level((string)CONTEXT_COURSE));
$this->assertSame(context\module::class, context_helper::parse_external_level('module'));
$this->assertSame(context\module::class, context_helper::parse_external_level(CONTEXT_MODULE));
$this->assertSame(context\module::class, context_helper::parse_external_level((string)CONTEXT_MODULE));
$this->assertSame(context\block::class, context_helper::parse_external_level('block'));
$this->assertSame(context\block::class, context_helper::parse_external_level(CONTEXT_BLOCK));
$this->assertSame(context\block::class, context_helper::parse_external_level((string)CONTEXT_BLOCK));
$this->assertNull(context_helper::parse_external_level('core_system'));
$this->assertNull(context_helper::parse_external_level('xsystem'));
$this->assertNull(context_helper::parse_external_level(1));
$this->assertNull(context_helper::parse_external_level(''));
}
/**
* Tests covered method.
* @covers ::resolve_behat_reference
*/
public function test_resolve_behat_reference(): void {
$this->assertNull(context_helper::resolve_behat_reference('blahbla', 'blahbla'));
$this->assertNull(context_helper::resolve_behat_reference('', ''));
$this->assertNull(context_helper::resolve_behat_reference('0', ''));
$syscontext = context\system::instance();
$result = context_helper::resolve_behat_reference('System', '');
$this->assertSame($syscontext->id, $result->id);
$syscontext = context\system::instance();
$result = context_helper::resolve_behat_reference('10', '');
$this->assertSame($syscontext->id, $result->id);
// The rest is tested in each context class test.
}
/**
* Tests covered method.
* @covers ::get_class_for_level
*/
public function test_get_class_for_level(): void {
$this->assertSame(context\system::class, context_helper::get_class_for_level(CONTEXT_SYSTEM));
$this->assertSame(context\system::class, context_helper::get_class_for_level((string)CONTEXT_SYSTEM));
$this->assertSame(context\user::class, context_helper::get_class_for_level(CONTEXT_USER));
$this->assertSame(context\user::class, context_helper::get_class_for_level((string)CONTEXT_USER));
$this->assertSame(context\coursecat::class, context_helper::get_class_for_level(CONTEXT_COURSECAT));
$this->assertSame(context\coursecat::class, context_helper::get_class_for_level((string)CONTEXT_COURSECAT));
$this->assertSame(context\course::class, context_helper::get_class_for_level(CONTEXT_COURSE));
$this->assertSame(context\course::class, context_helper::get_class_for_level((string)CONTEXT_COURSE));
$this->assertSame(context\module::class, context_helper::get_class_for_level(CONTEXT_MODULE));
$this->assertSame(context\module::class, context_helper::get_class_for_level((string)CONTEXT_MODULE));
$this->assertSame(context\block::class, context_helper::get_class_for_level(CONTEXT_BLOCK));
$this->assertSame(context\block::class, context_helper::get_class_for_level((string)CONTEXT_BLOCK));
try {
context_helper::get_class_for_level(1);
$this->fail('Exception expected if level does not exist');
} catch (\moodle_exception $e) {
$this->assertInstanceOf(\coding_exception::class, $e);
$this->assertSame('Coding error detected, it must be fixed by a programmer: Invalid context level specified',
$e->getMessage());
}
}
/**
* Tests covered method.
* @covers ::get_all_levels
*/
public function test_get_all_levels(): void {
$levels = context_helper::get_all_levels();
$this->assertArrayHasKey(CONTEXT_SYSTEM, $levels);
$this->assertSame(context\system::class, $levels[CONTEXT_SYSTEM]);
$this->assertArrayHasKey(CONTEXT_USER, $levels);
$this->assertSame(context\user::class, $levels[CONTEXT_USER]);
$this->assertArrayHasKey(CONTEXT_COURSECAT, $levels);
$this->assertSame(context\coursecat::class, $levels[CONTEXT_COURSECAT]);
$this->assertArrayHasKey(CONTEXT_COURSE, $levels);
$this->assertSame(context\course::class, $levels[CONTEXT_COURSE]);
$this->assertArrayHasKey(CONTEXT_MODULE, $levels);
$this->assertSame(context\module::class, $levels[CONTEXT_MODULE]);
$this->assertArrayHasKey(CONTEXT_BLOCK, $levels);
$this->assertSame(context\block::class, $levels[CONTEXT_BLOCK]);
$sorted = $levels;
ksort($sorted, SORT_NUMERIC);
$block = $sorted[CONTEXT_BLOCK];
unset($sorted[CONTEXT_BLOCK]);
$sorted[CONTEXT_BLOCK] = $block;
$this->assertSame(array_keys($sorted), array_keys($levels));
// Make sure level is set properly.
foreach ($levels as $level => $classname) {
$this->assertEquals($level, $classname::LEVEL);
if ($level != CONTEXT_SYSTEM) {
$this->assertGreaterThan(CONTEXT_SYSTEM, $level);
}
}
}
/**
* Tests covered method.
* @covers ::get_child_levels
*/
public function test_get_child_levels(): void {
$alllevels = context_helper::get_all_levels();
$childlevels = context_helper::get_child_levels(CONTEXT_SYSTEM);
$this->assertSame(count($alllevels) - 1, count($childlevels));
$childlevels = context_helper::get_child_levels(CONTEXT_USER);
$this->assertNotContains(CONTEXT_SYSTEM, $childlevels);
$this->assertNotContains(CONTEXT_USER, $childlevels);
$this->assertNotContains(CONTEXT_COURSECAT, $childlevels);
$this->assertNotContains(CONTEXT_COURSE, $childlevels);
$this->assertNotContains(CONTEXT_MODULE, $childlevels);
$this->assertContains(CONTEXT_BLOCK, $childlevels);
$childlevels = context_helper::get_child_levels(CONTEXT_COURSECAT);
$this->assertNotContains(CONTEXT_SYSTEM, $childlevels);
$this->assertNotContains(CONTEXT_USER, $childlevels);
$this->assertContains(CONTEXT_COURSECAT, $childlevels);
$this->assertContains(CONTEXT_COURSE, $childlevels);
$this->assertContains(CONTEXT_MODULE, $childlevels);
$this->assertContains(CONTEXT_BLOCK, $childlevels);
$childlevels = context_helper::get_child_levels(CONTEXT_COURSE);
$this->assertNotContains(CONTEXT_SYSTEM, $childlevels);
$this->assertNotContains(CONTEXT_USER, $childlevels);
$this->assertNotContains(CONTEXT_COURSECAT, $childlevels);
$this->assertNotContains(CONTEXT_COURSE, $childlevels);
$this->assertContains(CONTEXT_MODULE, $childlevels);
$this->assertContains(CONTEXT_BLOCK, $childlevels);
$childlevels = context_helper::get_child_levels(CONTEXT_MODULE);
$this->assertNotContains(CONTEXT_SYSTEM, $childlevels);
$this->assertNotContains(CONTEXT_USER, $childlevels);
$this->assertNotContains(CONTEXT_COURSECAT, $childlevels);
$this->assertNotContains(CONTEXT_COURSE, $childlevels);
$this->assertNotContains(CONTEXT_MODULE, $childlevels);
$this->assertContains(CONTEXT_BLOCK, $childlevels);
$childlevels = context_helper::get_child_levels(CONTEXT_BLOCK);
$this->assertCount(0, $childlevels);
}
/**
* Tests covered method.
* @covers ::get_compatible_levels
*/
public function test_get_compatible_levels(): void {
$levels = context_helper::get_compatible_levels('manager');
$this->assertContains(CONTEXT_SYSTEM, $levels);
$this->assertNotContains(CONTEXT_USER, $levels);
$this->assertContains(CONTEXT_COURSECAT, $levels);
$this->assertContains(CONTEXT_COURSE, $levels);
$this->assertNotContains(CONTEXT_MODULE, $levels);
$this->assertNotContains(CONTEXT_BLOCK, $levels);
$levels = context_helper::get_compatible_levels('coursecreator');
$this->assertContains(CONTEXT_SYSTEM, $levels);
$this->assertNotContains(CONTEXT_USER, $levels);
$this->assertContains(CONTEXT_COURSECAT, $levels);
$this->assertNotContains(CONTEXT_COURSE, $levels);
$this->assertNotContains(CONTEXT_MODULE, $levels);
$this->assertNotContains(CONTEXT_BLOCK, $levels);
$levels = context_helper::get_compatible_levels('editingteacher');
$this->assertNotContains(CONTEXT_SYSTEM, $levels);
$this->assertNotContains(CONTEXT_USER, $levels);
$this->assertNotContains(CONTEXT_COURSECAT, $levels);
$this->assertContains(CONTEXT_COURSE, $levels);
$this->assertContains(CONTEXT_MODULE, $levels);
$this->assertNotContains(CONTEXT_BLOCK, $levels);
$levels = context_helper::get_compatible_levels('teacher');
$this->assertNotContains(CONTEXT_SYSTEM, $levels);
$this->assertNotContains(CONTEXT_USER, $levels);
$this->assertNotContains(CONTEXT_COURSECAT, $levels);
$this->assertContains(CONTEXT_COURSE, $levels);
$this->assertContains(CONTEXT_MODULE, $levels);
$this->assertNotContains(CONTEXT_BLOCK, $levels);
$levels = context_helper::get_compatible_levels('student');
$this->assertNotContains(CONTEXT_SYSTEM, $levels);
$this->assertNotContains(CONTEXT_USER, $levels);
$this->assertNotContains(CONTEXT_COURSECAT, $levels);
$this->assertContains(CONTEXT_COURSE, $levels);
$this->assertContains(CONTEXT_MODULE, $levels);
$this->assertNotContains(CONTEXT_BLOCK, $levels);
$levels = context_helper::get_compatible_levels('user');
$this->assertCount(0, $levels);
$levels = context_helper::get_compatible_levels('guest');
$this->assertCount(0, $levels);
$levels = context_helper::get_compatible_levels('frontpage');
$this->assertCount(0, $levels);
}
/**
* Tests covered method.
* @covers ::cleanup_instances
*/
public function test_cleanup_instances(): void {
global $DB;
$this->resetAfterTest();
$this->preventResetByRollback();
$prevcount = $DB->count_records('context', []);
context_helper::cleanup_instances();
$count = $DB->count_records('context', []);
$this->assertSame($prevcount, $count);
// Insert bogus records for each level and see if they get removed,
// more test should be in tests for each context level.
$alllevels = context_helper::get_all_levels();
foreach ($alllevels as $classname) {
if ($classname::LEVEL == CONTEXT_SYSTEM) {
continue;
}
$record = new \stdClass();
$record->contextlevel = $classname::LEVEL;
$record->instanceid = SQL_INT_MAX;
$record->path = null;
$record->depth = '2';
$record->id = $DB->insert_record('context', $record);
$DB->set_field('context', 'path', SYSCONTEXTID . '/' . $record->id, ['id' => $record->id]);
}
context_helper::cleanup_instances();
$count = $DB->count_records('context', []);
$this->assertSame($prevcount, $count);
}
/**
* Tests covered method.
* @covers ::create_instances
*/
public function test_create_instances(): void {
global $DB;
$this->resetAfterTest();
$this->preventResetByRollback();
$user = $this->getDataGenerator()->create_user();
$usercontext = context\user::instance($user->id);
$category = $this->getDataGenerator()->create_category();
$categorycontext = context\coursecat::instance($category->id);
$course = $this->getDataGenerator()->create_course();
$coursecontext = context\course::instance($course->id);
$page = $this->getDataGenerator()->create_module('page', ['course' => $course->id]);
$pagecontext = context\module::instance($page->cmid);
$prevcount = $DB->count_records('context', []);
$DB->delete_records('context', ['id' => $usercontext->id]);
$DB->delete_records('context', ['id' => $categorycontext->id]);
$DB->delete_records('context', ['id' => $coursecontext->id]);
$DB->delete_records('context', ['id' => $pagecontext->id]);
context_helper::create_instances();
$count = $DB->count_records('context', []);
$this->assertSame($prevcount, $count);
}
/**
* Tests covered method.
* @covers ::build_all_paths
*/
public function test_build_all_paths(): void {
$this->resetAfterTest();
$this->preventResetByRollback();
// Just make sure there are no fatal errors for now.
context_helper::build_all_paths(true);
context_helper::build_all_paths();
}
/**
* Tests covered method.
* @covers ::reset_caches
*/
public function test_reset_caches(): void {
$this->resetAfterTest();
$this->preventResetByRollback();
// Just make sure there are no fatal errors for now.
context_helper::reset_caches();
}
/**
* Tests covered method.
* @covers ::get_preload_record_columns
*/
public function test_get_preload_record_columns(): void {
$expected = array (
'testalias.id' => 'ctxid',
'testalias.path' => 'ctxpath',
'testalias.depth' => 'ctxdepth',
'testalias.contextlevel' => 'ctxlevel',
'testalias.instanceid' => 'ctxinstance',
'testalias.locked' => 'ctxlocked',
);
$result = context_helper::get_preload_record_columns('testalias');
$this->assertSame($expected, $result);
}
/**
* Tests covered method.
* @covers ::get_preload_record_columns_sql
*/
public function test_get_preload_record_columns_sql(): void {
global $DB;
$result = context_helper::get_preload_record_columns_sql('testalias');
$expected = 'testalias.id AS ctxid, testalias.path AS ctxpath, testalias.depth AS ctxdepth,'
.' testalias.contextlevel AS ctxlevel, testalias.instanceid AS ctxinstance, testalias.locked AS ctxlocked';
$this->assertSame($expected, $result);
$sql = "SELECT id, $result
FROM {context} testalias";
$DB->get_records_sql($sql, []);
}
/**
* Tests covered method.
* @covers ::preload_from_record
*/
public function test_preload_from_record(): void {
global $DB;
$select = context_helper::get_preload_record_columns_sql('testalias');
$sql = "SELECT id, $select
FROM {context} testalias";
$records = $DB->get_records_sql($sql, []);
foreach ($records as $record) {
$this->assertNull(context_helper::preload_from_record($record));
}
$this->assertDebuggingNotCalled();
$record = reset($records);
unset($record->ctxlevel);
$this->assertNull(context_helper::preload_from_record($record));
}
/**
* Tests covered method.
* @covers ::preload_contexts_by_id
*/
public function test_preload_contexts_by_id(): void {
global $DB;
$contextids = $DB->get_fieldset_sql("SELECT id FROM {context}", []);
context_helper::preload_contexts_by_id($contextids);
context_helper::preload_contexts_by_id($contextids);
context_helper::reset_caches();
context_helper::preload_contexts_by_id($contextids);
}
/**
* Tests covered method.
* @covers ::preload_course
*/
public function test_preload_course(): void {
global $SITE;
context_helper::preload_course($SITE->id);
}
/**
* Tests covered method.
* @covers ::delete_instance
*/
public function test_delete_instance(): void {
$this->resetAfterTest();
$user = $this->getDataGenerator()->create_user();
$category = $this->getDataGenerator()->create_category();
$course = $this->getDataGenerator()->create_course();
$page = $this->getDataGenerator()->create_module('page', array('course' => $course->id));
// This is a bit silly test, it might start failing in the future
// because the instances are not deleted before deleting the contexts.
context_helper::delete_instance(CONTEXT_USER, $user->id);
context_helper::delete_instance(CONTEXT_COURSECAT, $category->id);
context_helper::delete_instance(CONTEXT_COURSE, $course->id);
context_helper::delete_instance(CONTEXT_MODULE, $page->cmid);
}
/**
* Tests covered method.
* @covers ::get_level_name
*/
public function test_get_level_name(): void {
$allevels = context_helper::get_all_levels();
foreach ($allevels as $level => $classname) {
$name = context_helper::get_level_name($level);
$this->assertIsString($name);
}
$this->assertSame('System', context_helper::get_level_name(CONTEXT_SYSTEM));
$this->assertSame('User', context_helper::get_level_name(CONTEXT_USER));
$this->assertSame('Category', context_helper::get_level_name(CONTEXT_COURSECAT));
$this->assertSame('Course', context_helper::get_level_name(CONTEXT_COURSE));
$this->assertSame('Activity module', context_helper::get_level_name(CONTEXT_MODULE));
$this->assertSame('Block', context_helper::get_level_name(CONTEXT_BLOCK));
}
/**
* Tests covered method.
* @covers ::get_navigation_filter_context
*/
public function test_get_navigation_filter_context(): void {
global $CFG;
$this->resetAfterTest();
$user = $this->getDataGenerator()->create_user();
$usercontext = context\user::instance($user->id);
$category = $this->getDataGenerator()->create_category();
$categorycontext = context\coursecat::instance($category->id);
$course = $this->getDataGenerator()->create_course();
$coursecontext = context\course::instance($course->id);
$page = $this->getDataGenerator()->create_module('page', array('course' => $course->id));
$pagecontext = context\module::instance($page->cmid);
$systemcontext = context\system::instance();
// First test passed values are returned if disabled.
set_config('filternavigationwithsystemcontext', '0');
$this->assertNull(context_helper::get_navigation_filter_context(null));
$filtercontext = context_helper::get_navigation_filter_context($systemcontext);
$this->assertSame($systemcontext, $filtercontext);
$filtercontext = context_helper::get_navigation_filter_context($usercontext);
$this->assertSame($usercontext, $filtercontext);
$filtercontext = context_helper::get_navigation_filter_context($categorycontext);
$this->assertSame($categorycontext, $filtercontext);
$filtercontext = context_helper::get_navigation_filter_context($coursecontext);
$this->assertSame($coursecontext, $filtercontext);
$filtercontext = context_helper::get_navigation_filter_context($pagecontext);
$this->assertSame($pagecontext, $filtercontext);
// Now test that any input returns system context if enabled.
set_config('filternavigationwithsystemcontext', '1');
$filtercontext = context_helper::get_navigation_filter_context(null);
$this->assertSame($systemcontext->id, $filtercontext->id);
$filtercontext = context_helper::get_navigation_filter_context($systemcontext);
$this->assertSame($systemcontext->id, $filtercontext->id);
$filtercontext = context_helper::get_navigation_filter_context($usercontext);
$this->assertSame($systemcontext->id, $filtercontext->id);
$filtercontext = context_helper::get_navigation_filter_context($categorycontext);
$this->assertSame($systemcontext->id, $filtercontext->id);
$filtercontext = context_helper::get_navigation_filter_context($coursecontext);
$this->assertSame($systemcontext->id, $filtercontext->id);
$filtercontext = context_helper::get_navigation_filter_context($pagecontext);
$this->assertSame($systemcontext->id, $filtercontext->id);
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| analytics | Folder | 0777 |
|
|
| behat | Folder | 0777 |
|
|
| classes | Folder | 0777 |
|
|
| content | Folder | 0777 |
|
|
| context | Folder | 0777 |
|
|
| db | Folder | 0777 |
|
|
| event | Folder | 0777 |
|
|
| external | Folder | 0777 |
|
|
| fixtures | Folder | 0777 |
|
|
| hook | Folder | 0777 |
|
|
| hub | Folder | 0777 |
|
|
| lock | Folder | 0777 |
|
|
| moodlenet | Folder | 0777 |
|
|
| navigation | Folder | 0777 |
|
|
| oauth2 | Folder | 0777 |
|
|
| other | Folder | 0777 |
|
|
| output | Folder | 0777 |
|
|
| performance | Folder | 0777 |
|
|
| plugininfo | Folder | 0777 |
|
|
| privacy | Folder | 0777 |
|
|
| route | Folder | 0777 |
|
|
| router | Folder | 0777 |
|
|
| session | Folder | 0777 |
|
|
| task | Folder | 0777 |
|
|
| accesslib_has_capability_test.php | File | 29.76 KB | 0777 |
|
| accesslib_test.php | File | 245.63 KB | 0777 |
|
| adminlib_test.php | File | 7.42 KB | 0777 |
|
| admintree_test.php | File | 18.08 KB | 0777 |
|
| ajaxlib_test.php | File | 4.45 KB | 0777 |
|
| analysers_test.php | File | 12.71 KB | 0777 |
|
| antivirus_test.php | File | 11.98 KB | 0777 |
|
| attribute_helper_test.php | File | 8.41 KB | 0777 |
|
| authlib_test.php | File | 22.97 KB | 0777 |
|
| behat_lib_test.php | File | 3.3 KB | 0777 |
|
| blocklib_test.php | File | 36.31 KB | 0777 |
|
| check_test.php | File | 2.31 KB | 0777 |
|
| client_test.php | File | 4.32 KB | 0777 |
|
| collator_test.php | File | 12.1 KB | 0777 |
|
| completionlib_test.php | File | 92.46 KB | 0777 |
|
| component_test.php | File | 49.28 KB | 0777 |
|
| componentlib_test.php | File | 6.93 KB | 0777 |
|
| configonlylib_test.php | File | 8.95 KB | 0777 |
|
| content_test.php | File | 4.79 KB | 0777 |
|
| context_block_test.php | File | 4.17 KB | 0777 |
|
| context_helper_test.php | File | 22.28 KB | 0777 |
|
| context_test.php | File | 3.42 KB | 0777 |
|
| core_media_player_native_test.php | File | 6.44 KB | 0777 |
|
| core_renderer_template_exploit_test.php | File | 16.54 KB | 0777 |
|
| core_renderer_test.php | File | 7.57 KB | 0777 |
|
| core_userfeedback_test.php | File | 2.3 KB | 0777 |
|
| coverage.php | File | 3.27 KB | 0777 |
|
| cron_test.php | File | 6.82 KB | 0777 |
|
| csvclass_test.php | File | 5.66 KB | 0777 |
|
| curl_security_helper_test.php | File | 14.88 KB | 0777 |
|
| customcontext_test.php | File | 4.67 KB | 0777 |
|
| dataformat_test.php | File | 4.18 KB | 0777 |
|
| datalib_test.php | File | 48.97 KB | 0777 |
|
| datalib_update_with_unique_index_test.php | File | 6.12 KB | 0777 |
|
| date_legacy_test.php | File | 13.67 KB | 0777 |
|
| date_test.php | File | 30.4 KB | 0777 |
|
| deprecation_test.php | File | 15.78 KB | 0777 |
|
| di_test.php | File | 5.33 KB | 0777 |
|
| editorlib_test.php | File | 1.96 KB | 0777 |
|
| emoticon_manager_test.php | File | 4.2 KB | 0777 |
|
| encryption_test.php | File | 9.48 KB | 0777 |
|
| environment_test.php | File | 9.12 KB | 0777 |
|
| exporter_test.php | File | 16.83 KB | 0777 |
|
| externallib_test.php | File | 2.03 KB | 0777 |
|
| filelib_test.php | File | 83.89 KB | 0777 |
|
| filestorage_zip_archive_test.php | File | 2.54 KB | 0777 |
|
| filetypes_test.php | File | 10.09 KB | 0777 |
|
| filter_manager_test.php | File | 3.33 KB | 0777 |
|
| filterlib_test.php | File | 37.09 KB | 0777 |
|
| formatting_test.php | File | 26.09 KB | 0777 |
|
| formslib_test.php | File | 40.1 KB | 0777 |
|
| gdlib_test.php | File | 5.73 KB | 0777 |
|
| googlelib_test.php | File | 1.62 KB | 0777 |
|
| gradelib_test.php | File | 12.01 KB | 0777 |
|
| grades_external_test.php | File | 11.22 KB | 0777 |
|
| grading_external_test.php | File | 26.55 KB | 0777 |
|
| graphlib_test.php | File | 7.14 KB | 0777 |
|
| grouplib_test.php | File | 110.79 KB | 0777 |
|
| h5p_clean_orphaned_records_task_test.php | File | 3.17 KB | 0777 |
|
| html2text_test.php | File | 8.82 KB | 0777 |
|
| htmlpurifier_test.php | File | 23.11 KB | 0777 |
|
| http_client_test.php | File | 14.67 KB | 0777 |
|
| ip_utils_test.php | File | 19.55 KB | 0777 |
|
| jquery_test.php | File | 1.59 KB | 0777 |
|
| ldaplib_test.php | File | 17.77 KB | 0777 |
|
| licenselib_test.php | File | 11.84 KB | 0777 |
|
| locale_test.php | File | 4.96 KB | 0777 |
|
| lock_config_test.php | File | 3.48 KB | 0777 |
|
| lock_test.php | File | 5.34 KB | 0777 |
|
| markdown_test.php | File | 2.27 KB | 0777 |
|
| mathslib_test.php | File | 13.51 KB | 0777 |
|
| medialib_test.php | File | 19.68 KB | 0777 |
|
| message_test.php | File | 16.43 KB | 0777 |
|
| messagelib_test.php | File | 56.44 KB | 0777 |
|
| minify_test.php | File | 3.15 KB | 0777 |
|
| modinfolib_test.php | File | 99.71 KB | 0777 |
|
| moodle_page_test.php | File | 34.62 KB | 0777 |
|
| moodlelib_current_language_test.php | File | 7.68 KB | 0777 |
|
| moodlelib_partial_test.php | File | 4.48 KB | 0777 |
|
| moodlelib_test.php | File | 239.56 KB | 0777 |
|
| myprofilelib_test.php | File | 12.2 KB | 0777 |
|
| navigationlib_test.php | File | 32.56 KB | 0777 |
|
| notification_test.php | File | 4.37 KB | 0777 |
|
| oauth2_test.php | File | 23.16 KB | 0777 |
|
| outputcomponents_test.php | File | 34.31 KB | 0777 |
|
| outputfactories_test.php | File | 6.83 KB | 0777 |
|
| outputrenderers_test.php | File | 1.63 KB | 0777 |
|
| outputrequirementslib_test.php | File | 15.72 KB | 0777 |
|
| param_test.php | File | 4.11 KB | 0777 |
|
| pdflib_test.php | File | 3.21 KB | 0777 |
|
| persistent_test.php | File | 30.68 KB | 0777 |
|
| phpxmlrpc_test.php | File | 2.05 KB | 0777 |
|
| plugin_manager_test.php | File | 31.47 KB | 0777 |
|
| portfoliolib_test.php | File | 8.41 KB | 0777 |
|
| progress_display_test.php | File | 3.76 KB | 0777 |
|
| progress_test.php | File | 14.53 KB | 0777 |
|
| qrcode_test.php | File | 1.69 KB | 0777 |
|
| questionlib_test.php | File | 108.63 KB | 0777 |
|
| regex_test.php | File | 1.56 KB | 0777 |
|
| report_helper_test.php | File | 7 KB | 0777 |
|
| requirejs_test.php | File | 2.23 KB | 0777 |
|
| router_test.php | File | 3.85 KB | 0777 |
|
| rsslib_test.php | File | 7.41 KB | 0777 |
|
| rtlcss_test.php | File | 57.07 KB | 0777 |
|
| sample_questions.ser | File | 141.76 KB | 0777 |
|
| sample_questions.xml | File | 102.62 KB | 0777 |
|
| sample_questions_with_old_image_tag.ser | File | 4.85 KB | 0777 |
|
| sample_questions_with_old_image_tag.xml | File | 4.08 KB | 0777 |
|
| sample_questions_wrong.xml | File | 102.57 KB | 0777 |
|
| scss_test.php | File | 4.31 KB | 0777 |
|
| session_redis_cluster_test.php | File | 4.17 KB | 0777 |
|
| sessionlib_test.php | File | 12.37 KB | 0777 |
|
| setuplib_test.php | File | 20.21 KB | 0777 |
|
| statslib_test.php | File | 26.82 KB | 0777 |
|
| stored_progress_bar_test.php | File | 7.17 KB | 0777 |
|
| string_manager_standard_test.php | File | 10.23 KB | 0777 |
|
| system_clock_test.php | File | 2.42 KB | 0777 |
|
| text_test.php | File | 26.68 KB | 0777 |
|
| theme_config_test.php | File | 7.25 KB | 0777 |
|
| update_api_test.php | File | 6.65 KB | 0777 |
|
| update_checker_test.php | File | 10.91 KB | 0777 |
|
| update_code_manager_test.php | File | 9.12 KB | 0777 |
|
| update_validator_test.php | File | 18.32 KB | 0777 |
|
| upgrade_util_test.php | File | 5.36 KB | 0777 |
|
| upgradelib_test.php | File | 75.43 KB | 0777 |
|
| url_test.php | File | 25.48 KB | 0777 |
|
| user_menu_test.php | File | 3.83 KB | 0777 |
|
| user_test.php | File | 42.3 KB | 0777 |
|
| useragent_test.php | File | 67.06 KB | 0777 |
|
| weblib_format_text_test.php | File | 14.21 KB | 0777 |
|
| weblib_test.php | File | 42.12 KB | 0777 |
|
| xhprof_test.php | File | 10.05 KB | 0777 |
|
| xmlize_test.php | File | 2.57 KB | 0777 |
|
| xsendfilelib_test.php | File | 5 KB | 0777 |
|