Proyectos de Subversion Moodle

Rev

Rev 11 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 11 Rev 1441
Línea 16... Línea 16...
16
 
16
 
Línea 17... Línea 17...
17
namespace core_webservice;
17
namespace core_webservice;
18
 
18
 
-
 
19
use core_external\external_api;
Línea 19... Línea 20...
19
use core_external\external_api;
20
use externallib_advanced_testcase;
Línea 20... Línea 21...
20
use externallib_advanced_testcase;
21
use core\tests\session\mock_handler;
21
 
22
 
Línea 27... Línea 28...
27
 
28
 
28
/**
29
/**
29
 * External course functions unit tests
30
 * External course functions unit tests
30
 *
31
 *
-
 
32
 * @package    core_webservice
31
 * @package    core_webservice
33
 * @covers     \core_webservice_external::get_site_info
32
 * @category   external
34
 * @category   external
33
 * @copyright  2012 Paul Charsley
35
 * @copyright  2012 Paul Charsley
34
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
36
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
35
 */
37
 */
36
class externallib_test extends externallib_advanced_testcase {
-
 
-
 
38
final class externallib_test extends externallib_advanced_testcase {
37
 
39
    #[\Override]
38
    public function setUp(): void {
40
    public function setUp(): void {
39
        // Calling parent is good, always
41
        // Calling parent is good, always
Línea 40... Línea 42...
40
        parent::setUp();
42
        parent::setUp();
41
 
43
 
42
        // We always need enabled WS for this testcase
44
        // We always need enabled WS for this testcase
Línea -... Línea 45...
-
 
45
        set_config('enablewebservices', '1');
-
 
46
    }
-
 
47
 
43
        set_config('enablewebservices', '1');
48
    /**
44
    }
49
     * Test get_site_info.
Línea 45... Línea 50...
45
 
50
     */
Línea 188... Línea 193...
188
        $record->userid       = $USER->id;
193
        $record->userid       = $USER->id;
189
        $record->timemodified = time();
194
        $record->timemodified = time();
190
        $record->firstip      = $record->lastip = '10.0.0.1';
195
        $record->firstip      = $record->lastip = '10.0.0.1';
191
        $record->sid = md5('hokus1');
196
        $record->sid = md5('hokus1');
192
        $record->timecreated = time();
197
        $record->timecreated = time();
-
 
198
 
-
 
199
        $mockhandler = new mock_handler();
193
        $DB->insert_record('sessions', $record);
200
        $mockhandler->add_test_session($record);
Línea 194... Línea 201...
194
 
201
 
195
        $siteinfo = \core_webservice_external::get_site_info();
202
        $siteinfo = \core_webservice_external::get_site_info();
196
        $siteinfo = external_api::clean_returnvalue(\core_webservice_external::get_site_info_returns(), $siteinfo);
203
        $siteinfo = external_api::clean_returnvalue(\core_webservice_external::get_site_info_returns(), $siteinfo);
197
        $this->assertEquals($CFG->limitconcurrentlogins, $siteinfo['limitconcurrentlogins']);
204
        $this->assertEquals($CFG->limitconcurrentlogins, $siteinfo['limitconcurrentlogins']);
Línea 276... Línea 283...
276
        // Check we ignore the missing component function.
283
        // Check we ignore the missing component function.
277
        $this->assertCount(1, $result['functions']);
284
        $this->assertCount(1, $result['functions']);
278
        $this->assertEquals('core_user_get_users', $result['functions'][0]['name']);
285
        $this->assertEquals('core_user_get_users', $result['functions'][0]['name']);
279
    }
286
    }
Línea -... Línea 287...
-
 
287
 
-
 
288
 
-
 
289
    /**
-
 
290
     * Test get_site_info returns the default home page URL when needed.
-
 
291
     */
-
 
292
    public function test_get_site_info_default_home_page(): void {
-
 
293
        global $CFG;
-
 
294
 
-
 
295
        $this->resetAfterTest();
-
 
296
        $this->setAdminUser();
-
 
297
 
-
 
298
        // Site configuration.
-
 
299
        $CFG->defaulthomepage = HOMEPAGE_MY;
-
 
300
 
-
 
301
        $result = \core_webservice_external::get_site_info();
-
 
302
        $result = external_api::clean_returnvalue(\core_webservice_external::get_site_info_returns(), $result);
-
 
303
        $this->assertEquals(HOMEPAGE_MY, $result['userhomepage']);
-
 
304
        $this->assertArrayNotHasKey('userhomepageurl', $result);
-
 
305
 
-
 
306
        $CFG->defaulthomepage = "/home";
-
 
307
 
-
 
308
        $result = \core_webservice_external::get_site_info();
-
 
309
        $result = external_api::clean_returnvalue(\core_webservice_external::get_site_info_returns(), $result);
-
 
310
        $this->assertEquals(HOMEPAGE_URL, $result['userhomepage']);
-
 
311
        $this->assertEquals("{$CFG->wwwroot}/home", $result['userhomepageurl']);
-
 
312
 
-
 
313
        // User preference.
-
 
314
        $CFG->defaulthomepage = HOMEPAGE_USER;
-
 
315
 
-
 
316
        $userpreference = "/about";
-
 
317
        set_user_preference('user_home_page_preference', $userpreference);
-
 
318
 
-
 
319
        $result = \core_webservice_external::get_site_info();
-
 
320
        $result = external_api::clean_returnvalue(\core_webservice_external::get_site_info_returns(), $result);
-
 
321
        $this->assertEquals(HOMEPAGE_URL, $result['userhomepage']);
-
 
322
        $this->assertEquals("{$CFG->wwwroot}/about", $result['userhomepageurl']);
-
 
323
    }
280
 
324