Proyectos de Subversion Moodle

Rev

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

Rev 1 Rev 1441
Línea 21... Línea 21...
21
 *
21
 *
22
 * @package    core_adminpresets
22
 * @package    core_adminpresets
23
 * @category   test
23
 * @category   test
24
 * @copyright  2021 Sara Arjona (sara@moodle.com)
24
 * @copyright  2021 Sara Arjona (sara@moodle.com)
25
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
25
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
26
 * @coversDefaultClass helper
26
 * @coversDefaultClass \core_adminpresets\helper
27
 */
27
 */
28
class helper_test extends \advanced_testcase {
28
final class helper_test extends \advanced_testcase {
Línea 29... Línea 29...
29
 
29
 
30
    /**
30
    /**
31
     * Test the behaviour of create_preset() method.
31
     * Test the behaviour of create_preset() method.
32
     *
32
     *
Línea 82... Línea 82...
82
    /**
82
    /**
83
     * Data provider for test_create_preset().
83
     * Data provider for test_create_preset().
84
     *
84
     *
85
     * @return array
85
     * @return array
86
     */
86
     */
87
    public function create_preset_provider(): array {
87
    public static function create_preset_provider(): array {
88
        return [
88
        return [
89
            'Default values' => [
89
            'Default values' => [
90
            ],
90
            ],
91
            'Name not empty' => [
91
            'Name not empty' => [
92
                'name' => 'Preset xaxi name',
92
                'name' => 'Preset xaxi name',
Línea 175... Línea 175...
175
    /**
175
    /**
176
     * Data provider for test_add_item().
176
     * Data provider for test_add_item().
177
     *
177
     *
178
     * @return array
178
     * @return array
179
     */
179
     */
180
    public function add_item_provider(): array {
180
    public static function add_item_provider(): array {
181
        return [
181
        return [
182
            'Setting without plugin' => [
182
            'Setting without plugin' => [
183
                'name' => 'settingname',
183
                'name' => 'settingname',
184
                'value' => 'thisisthevalue',
184
                'value' => 'thisisthevalue',
185
            ],
185
            ],
Línea 237... Línea 237...
237
    /**
237
    /**
238
     * Data provider for test_add_plugin().
238
     * Data provider for test_add_plugin().
239
     *
239
     *
240
     * @return array
240
     * @return array
241
     */
241
     */
242
    public function add_plugin_provider(): array {
242
    public static function add_plugin_provider(): array {
243
        return [
243
        return [
244
            'Plugin: enabled (using int)' => [
244
            'Plugin: enabled (using int)' => [
245
                'type' => 'plugintype',
245
                'type' => 'plugintype',
246
                'name' => 'pluginname',
246
                'name' => 'pluginname',
247
                'enabled' => 1,
247
                'enabled' => 1,
Línea 283... Línea 283...
283
        $this->resetAfterTest();
283
        $this->resetAfterTest();
284
        $this->setAdminUser();
284
        $this->setAdminUser();
Línea 285... Línea 285...
285
 
285
 
286
        // We need to change some of the default values; otherwise, the full preset won't be applied, because all the settings
286
        // We need to change some of the default values; otherwise, the full preset won't be applied, because all the settings
287
        // and plugins are the same.
287
        // and plugins are the same.
Línea 288... Línea 288...
288
        set_config('enableanalytics', '0');
288
        set_config('enableanalytics', '1');
289
 
289
 
Línea -... Línea 290...
-
 
290
        $generator = $this->getDataGenerator()->get_plugin_generator('core_adminpresets');
-
 
291
        $generator->create_preset(['name' => 'Preset 1']);
290
        $generator = $this->getDataGenerator()->get_plugin_generator('core_adminpresets');
292
 
-
 
293
        $invokable = self::get_invokable();
Línea 291... Línea 294...
291
        $generator->create_preset(['name' => 'Preset 1']);
294
        set_error_handler($invokable, E_WARNING);
292
 
295
        $presetid = helper::change_default_preset($preset);
293
        $presetid = helper::change_default_preset($preset);
296
        restore_error_handler();
294
 
297
 
Línea 319... Línea 322...
319
    /**
322
    /**
320
     * Data provider for test_change_default_preset().
323
     * Data provider for test_change_default_preset().
321
     *
324
     *
322
     * @return array
325
     * @return array
323
     */
326
     */
324
    public function change_default_preset_provider(): array {
327
    public static function change_default_preset_provider(): array {
325
        return [
328
        return [
326
            'Starter preset' => [
329
            'Starter preset' => [
327
                'preset' => 'starter',
330
                'preset' => 'starter',
328
                'settings' => [
331
                'settings' => [
329
                    'enablebadges' => 0,
332
                    'enablebadges' => 0,
330
                    'enableportfolios' => 0,
333
                    'enableportfolios' => 0,
331
                ],
334
                ],
332
                'plugins' => [
335
                'plugins' => [
333
                    'assign' => 1,
336
                    'assign' => 1,
334
                    'chat' => 0,
337
                    'wiki' => 0,
335
                    'data' => 0,
338
                    'data' => 0,
336
                    'lesson' => 0,
339
                    'lesson' => 0,
337
                ],
340
                ],
338
            ],
341
            ],
339
            'Full preset' => [
342
            'Full preset' => [
Línea 362... Línea 365...
362
            ],
365
            ],
363
            'Unexisting preset name' => [
366
            'Unexisting preset name' => [
364
                'preset' => 'unexisting',
367
                'preset' => 'unexisting',
365
            ],
368
            ],
366
            'Valid XML file' => [
369
            'Valid XML file' => [
367
                'preset' => __DIR__ . '/fixtures/import_settings_plugins.xml',
370
                'preset' => self::get_fixture_path(__NAMESPACE__, 'import_settings_plugins.xml'),
368
                'settings' => [
371
                'settings' => [
369
                    'allowemojipicker' => 1,
372
                    'allowemojipicker' => 1,
370
                    'enableportfolios' => 1,
373
                    'enableportfolios' => 1,
371
                ],
374
                ],
372
                'plugins' => [
375
                'plugins' => [
373
                    'assign' => 1,
376
                    'assign' => 1,
374
                    'chat' => 0,
377
                    'page' => 0,
375
                    'data' => 0,
378
                    'data' => 0,
376
                    'lesson' => 1,
379
                    'lesson' => 1,
377
                ],
380
                ],
378
            ],
381
            ],
379
            'Invalid XML file' => [
382
            'Invalid XML file' => [
380
                'preset' => __DIR__ . '/fixtures/invalid_xml_file.xml',
383
                'preset' => self::get_fixture_path(__NAMESPACE__, 'invalid_xml_file.xml'),
381
            ],
384
            ],
382
            'Unexisting XML file' => [
385
            'Unexisting XML file' => [
383
                'preset' => __DIR__ . '/fixtures/unexisting.xml',
386
                'preset' => __DIR__ . '/fixtures/unexisting.xml',
384
            ],
387
            ],
385
        ];
388
        ];