Proyectos de Subversion Moodle

Rev

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

Rev 1 Rev 1441
Línea 26... Línea 26...
26
 *
26
 *
27
 * @package     mod_quiz
27
 * @package     mod_quiz
28
 * @copyright   2021 Paul Holden <paulh@moodle.com>
28
 * @copyright   2021 Paul Holden <paulh@moodle.com>
29
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
29
 * @license     http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
30
 */
30
 */
31
class restore_attempt_test extends \advanced_testcase {
31
final class restore_attempt_test extends \advanced_testcase {
Línea 32... Línea 32...
32
 
32
 
33
    /**
33
    /**
34
     * Load required libraries
34
     * Load required libraries
35
     */
35
     */
36
    public static function setUpBeforeClass(): void {
36
    public static function setUpBeforeClass(): void {
Línea 37... Línea 37...
37
        global $CFG;
37
        global $CFG;
-
 
38
 
38
 
39
        require_once("{$CFG->dirroot}/backup/util/includes/restore_includes.php");
Línea 39... Línea 40...
39
        require_once("{$CFG->dirroot}/backup/util/includes/restore_includes.php");
40
        parent::setUpBeforeClass();
40
    }
41
    }
41
 
42
 
Línea 51... Línea 52...
51
        $this->setAdminUser();
52
        $this->setAdminUser();
Línea 52... Línea 53...
52
 
53
 
53
        // Contains a quiz with four attempts from different users. The users are as follows (user ID -> user):
54
        // Contains a quiz with four attempts from different users. The users are as follows (user ID -> user):
54
        // 3 -> User 01, 4 -> User 02, 5 -> User 03, 6 -> User 04.
55
        // 3 -> User 01, 4 -> User 02, 5 -> User 03, 6 -> User 04.
55
        // The user details for User 02 and User 03 have been removed from the backup file.
56
        // The user details for User 02 and User 03 have been removed from the backup file.
Línea 56... Línea 57...
56
        $testfixture = __DIR__ . '/fixtures/question_attempts_missing_users.mbz';
57
        $testfixture = self::get_fixture_path(__NAMESPACE__, 'question_attempts_missing_users.mbz');
57
 
58
 
58
        // Extract our test fixture, ready to be restored.
59
        // Extract our test fixture, ready to be restored.
59
        $backuptempdir = 'aaa';
60
        $backuptempdir = 'aaa';
Línea 65... Línea 66...
65
        $courseid = restore_dbops::create_new_course('Test fullname', 'Test shortname', $categoryid);
66
        $courseid = restore_dbops::create_new_course('Test fullname', 'Test shortname', $categoryid);
Línea 66... Línea 67...
66
 
67
 
67
        $controller = new restore_controller($backuptempdir, $courseid, backup::INTERACTIVE_NO, backup::MODE_GENERAL, $USER->id,
68
        $controller = new restore_controller($backuptempdir, $courseid, backup::INTERACTIVE_NO, backup::MODE_GENERAL, $USER->id,
Línea 68... Línea 69...
68
            backup::TARGET_NEW_COURSE);
69
            backup::TARGET_NEW_COURSE);
-
 
70
 
-
 
71
        $controller->execute_precheck();
-
 
72
        $results = $controller->get_precheck_results();
-
 
73
        // Backup contains categories attached to deprecated contexts so the results should only contain warnings for these.
-
 
74
        $this->assertCount(2, $results['warnings']);
-
 
75
        foreach ($results['warnings'] as $warning) {
-
 
76
            $this->assertStringContainsString('will be created at a question bank module context by restore', $warning);
-
 
77
        }
69
 
78
        $this->assertArrayNotHasKey('errors', $results);
70
        $this->assertTrue($controller->execute_precheck());
79
 
Línea 71... Línea 80...
71
        $controller->execute_plan();
80
        $controller->execute_plan();
72
        $controller->destroy();
81
        $controller->destroy();