/** * Returns a user object and its assigned new role. * * @param testing_data_generator $generator * @param $contextid * @return array The user object and the role ID */ protected function get_user_objects(testing_data_generator $generator, $contextid) { global $USER; if (empty($USER->id)) { $user = $generator->create_user(); $this->setUser($user); } $roleid = create_role('Test role', 'testrole', 'Test role description'); if (!is_array($contextid)) { $contextid = array($contextid); } foreach ($contextid as $cid) { $assignid = role_assign($roleid, $user->id, $cid); } return array($user, $roleid); }
// Enable the Web Services. set_config('enablewebservices', 1); // Enable Web Services documentation. set_config('enablewsdocumentation', 1); // Enable each protocol. set_config('webserviceprotocols', 'amf,rest,soap,xmlrpc'); // Create the Web Service user. $user = $DB->get_record('user', array('username' => 'testtete')); if (!$user) { $user = new stdClass(); $user->username = '******'; $user->firstname = 'Web'; $user->lastname = 'Service'; $user->password = '******'; $dg = new testing_data_generator(); $user = $dg->create_user($user); } // Create a role for Web Services with all permissions. if (!($roleid = $DB->get_field('role', 'id', array('shortname' => 'testtete')))) { $roleid = create_role('Web Service', 'testtete', 'MDK: All permissions given by default.', ''); } $context = context_system::instance(); set_role_contextlevels($roleid, array($context->contextlevel)); role_assign($roleid, $user->id, $context->id); if (method_exists($context, 'get_capabilities')) { $capabilities = $context->get_capabilities(); } else { $capabilities = fetch_context_capabilities($context); } foreach ($capabilities as $capability) { assign_capability($capability->name, CAP_ALLOW, $roleid, $context->id, true);