Skip to content

Commit

Permalink
fixup! MDL-83541 qtypes: Define excluded hash fields and test hints
Browse files Browse the repository at this point in the history
Rename $tags to $backupdata (qtypes)
  • Loading branch information
marxjohnson committed Feb 18, 2025
1 parent 502a0c2 commit ae4b9aa
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -115,11 +115,11 @@ public function process_calculated_option($data) {
}

#[\Override]
public static function convert_backup_to_questiondata(array $tags): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($tags);
public static function convert_backup_to_questiondata(array $backupdata): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($backupdata);
$qtype = $questiondata->qtype;
foreach ($tags["plugin_qtype_{$qtype}_question"]['calculated_records']['calculated_record'] as $record) {
foreach($questiondata->options->answers as &$answer) {
foreach ($backupdata["plugin_qtype_{$qtype}_question"]['calculated_records']['calculated_record'] as $record) {
foreach ($questiondata->options->answers as &$answer) {
if ($answer->id == $record['answer']) {
$answer->tolerance = $record['tolerance'];
$answer->tolerancetype = $record['tolerancetype'];
Expand All @@ -129,10 +129,10 @@ public static function convert_backup_to_questiondata(array $tags): \stdClass {
}
}
}
if (isset($tags["plugin_qtype_{$qtype}_question"]['calculated_options'])) {
if (isset($backupdata["plugin_qtype_{$qtype}_question"]['calculated_options'])) {
$questiondata->options = (object) array_merge(
(array) $questiondata->options,
$tags["plugin_qtype_{$qtype}_question"]['calculated_options']['calculated_option'][0],
$backupdata["plugin_qtype_{$qtype}_question"]['calculated_options']['calculated_option'][0],
);
}
return $questiondata;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -168,15 +168,15 @@ public static function define_decode_contents() {
}

#[\Override]
public static function convert_backup_to_questiondata(array $tags): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($tags);
public static function convert_backup_to_questiondata(array $backupdata): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($backupdata);
$questiondata->options->drags = array_map(
fn($drag) => (object) $drag,
$tags['plugin_qtype_ddimageortext_question']['drags']['drag'],
$backupdata['plugin_qtype_ddimageortext_question']['drags']['drag'],
);
$questiondata->options->drops = array_map(
fn($drop) => (object) $drop,
$tags['plugin_qtype_ddimageortext_question']['drops']['drop'],
$backupdata['plugin_qtype_ddimageortext_question']['drops']['drop'],
);
return $questiondata;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,15 +170,15 @@ public static function define_decode_contents() {
}

#[\Override]
public static function convert_backup_to_questiondata(array $tags): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($tags);
public static function convert_backup_to_questiondata(array $backupdata): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($backupdata);
$questiondata->options->drags = array_map(
fn($drag) => (object) $drag,
$tags['plugin_qtype_ddmarker_question']['drags']['drag'],
$backupdata['plugin_qtype_ddmarker_question']['drags']['drag'],
);
$questiondata->options->drops = array_map(
fn($drop) => (object) $drop,
$tags['plugin_qtype_ddmarker_question']['drops']['drop'],
$backupdata['plugin_qtype_ddmarker_question']['drops']['drop'],
);
return $questiondata;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -248,12 +248,12 @@ public static function define_decode_contents() {
}

#[\Override]
public static function convert_backup_to_questiondata(array $tags): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($tags);
$questiondata->options = (object) $tags["plugin_qtype_match_question"]['matchoptions'][0];
public static function convert_backup_to_questiondata(array $backupdata): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($backupdata);
$questiondata->options = (object) $backupdata["plugin_qtype_match_question"]['matchoptions'][0];
$questiondata->options->subquestions = array_map(
fn($match) => (object) $match,
$tags["plugin_qtype_match_question"]['matches']['match'],
$backupdata["plugin_qtype_match_question"]['matches']['match'],
);
return $questiondata;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,10 @@ public function process_numerical($data) {
}

#[\Override]
public static function convert_backup_to_questiondata(array $tags): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($tags);
foreach ($tags['plugin_qtype_numerical_question']['numerical_records']['numerical_record'] as $record) {
foreach($questiondata->options->answers as &$answer) {
public static function convert_backup_to_questiondata(array $backupdata): \stdClass {
$questiondata = parent::convert_backup_to_questiondata($backupdata);
foreach ($backupdata['plugin_qtype_numerical_question']['numerical_records']['numerical_record'] as $record) {
foreach ($questiondata->options->answers as &$answer) {
if ($answer->id == $record['answer']) {
$answer->tolerance = $record['tolerance'];
continue 2;
Expand Down

0 comments on commit ae4b9aa

Please sign in to comment.