Beispiel #1
0
 /**
  * Test get_plugins_supporting_mobile.
  * This is a very basic test because currently there aren't plugins supporting Mobile in core.
  */
 public function test_get_plugins_supporting_mobile()
 {
     $result = external::get_plugins_supporting_mobile();
     $result = external_api::clean_returnvalue(external::get_plugins_supporting_mobile_returns(), $result);
     $this->assertCount(0, $result['warnings']);
     $this->assertCount(0, $result['plugins']);
 }
Beispiel #2
0
 public function test_get_site_public_settings()
 {
     global $CFG, $SITE;
     $this->resetAfterTest(true);
     $result = external::get_site_public_settings();
     $result = external_api::clean_returnvalue(external::get_site_public_settings_returns(), $result);
     // Test default values.
     $context = context_system::instance();
     $expected = array('wwwroot' => $CFG->wwwroot, 'httpswwwroot' => $CFG->httpswwwroot, 'sitename' => external_format_string($SITE->fullname, $context->id, true), 'guestlogin' => $CFG->guestloginbutton, 'rememberusername' => $CFG->rememberusername, 'authloginviaemail' => $CFG->authloginviaemail, 'registerauth' => $CFG->registerauth, 'forgottenpasswordurl' => $CFG->forgottenpasswordurl, 'authinstructions' => format_text($CFG->auth_instructions), 'authnoneenabled' => (int) is_enabled_auth('none'), 'enablewebservices' => $CFG->enablewebservices, 'enablemobilewebservice' => $CFG->enablemobilewebservice, 'maintenanceenabled' => $CFG->maintenance_enabled, 'maintenancemessage' => format_text($CFG->maintenance_message), 'warnings' => array());
     $this->assertEquals($expected, $result);
     // Change a value.
     set_config('registerauth', 'email');
     $authinstructions = 'Something with <b>html tags</b>';
     set_config('auth_instructions', $authinstructions);
     $expected['registerauth'] = 'email';
     $expected['authinstructions'] = format_text($authinstructions);
     $result = external::get_site_public_settings();
     $result = external_api::clean_returnvalue(external::get_site_public_settings_returns(), $result);
     $this->assertEquals($expected, $result);
 }
 /**
  * Test get_autologin_key locked.
  */
 public function test_get_autologin_key_missing_locked()
 {
     global $CFG, $DB, $USER;
     $this->resetAfterTest(true);
     $user = $this->getDataGenerator()->create_user();
     $this->setUser($user);
     $CFG->enablewebservices = 1;
     $CFG->enablemobilewebservice = 1;
     $CFG->httpswwwroot = str_replace('http:', 'https:', $CFG->httpswwwroot);
     $service = $DB->get_record('external_services', array('shortname' => MOODLE_OFFICIAL_MOBILE_SERVICE));
     $token = external_generate_token_for_current_user($service);
     $_GET['wstoken'] = $token->token;
     // Mock parameters.
     $result = external::get_autologin_key($token->privatetoken);
     $result = external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
     // Mock last time request.
     $mocktime = time() - 7 * MINSECS;
     set_user_preference('tool_mobile_autologin_request_last', $mocktime, $USER);
     $result = external::get_autologin_key($token->privatetoken);
     $result = external_api::clean_returnvalue(external::get_autologin_key_returns(), $result);
     // We just requested one token, we must wait.
     $this->expectException('moodle_exception');
     $this->expectExceptionMessage(get_string('autologinkeygenerationlockout', 'tool_mobile'));
     $result = external::get_autologin_key($token->privatetoken);
 }
Beispiel #4
0
 /**
  * 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);
     // 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' => $SITE->summary), 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[9]['value'] = 1;
     unset($expected[10]);
     unset($expected[11]);
     $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']);
 }