/**
  * Test get_config
  */
 public function test_get_config()
 {
     global $CFG, $SITE;
     require_once $CFG->dirroot . '/course/format/lib.php';
     $this->resetAfterTest(true);
     $result = external::get_config();
     $result = external_api::clean_returnvalue(external::get_config_returns(), $result);
     // SITE summary is null in phpunit which gets transformed to an empty string by format_text.
     list($sitesummary, $unused) = external_format_text($SITE->summary, $SITE->summaryformat, context_system::instance()->id);
     // Test default values.
     $context = context_system::instance();
     $expected = array(array('name' => 'fullname', 'value' => $SITE->fullname), array('name' => 'shortname', 'value' => $SITE->shortname), array('name' => 'summary', 'value' => $sitesummary), array('name' => 'summaryformat', 'value' => FORMAT_HTML), array('name' => 'frontpage', 'value' => $CFG->frontpage), array('name' => 'frontpageloggedin', 'value' => $CFG->frontpageloggedin), array('name' => 'maxcategorydepth', 'value' => $CFG->maxcategorydepth), array('name' => 'frontpagecourselimit', 'value' => $CFG->frontpagecourselimit), array('name' => 'numsections', 'value' => course_get_format($SITE)->get_course()->numsections), array('name' => 'newsitems', 'value' => $SITE->newsitems), array('name' => 'commentsperpage', 'value' => $CFG->commentsperpage), array('name' => 'disableuserimages', 'value' => $CFG->disableuserimages), array('name' => 'mygradesurl', 'value' => user_mygrades_url()->out(false)));
     $this->assertCount(0, $result['warnings']);
     $this->assertEquals($expected, $result['settings']);
     // Change a value and retrieve filtering by section.
     set_config('commentsperpage', 1);
     $expected[10]['value'] = 1;
     unset($expected[11]);
     unset($expected[12]);
     $result = external::get_config('frontpagesettings');
     $result = external_api::clean_returnvalue(external::get_config_returns(), $result);
     $this->assertCount(0, $result['warnings']);
     $this->assertEquals($expected, $result['settings']);
 }