mirror of
https://github.com/moodle/moodle.git
synced 2025-01-18 05:58:34 +01:00
MDL-68902 mod_h5pactivity: fix result report output
This commit is contained in:
parent
4b6e92b8e9
commit
56d9b5f8d5
@ -150,7 +150,7 @@ class result implements renderable, templatable {
|
||||
'subcontent' => $result->subcontent,
|
||||
'timecreated' => $result->timecreated,
|
||||
'interactiontype' => $result->interactiontype,
|
||||
'description' => format_string($result->description),
|
||||
'description' => strip_tags($result->description),
|
||||
'rawscore' => $result->rawscore,
|
||||
'maxscore' => $result->maxscore,
|
||||
'duration' => $result->duration,
|
||||
|
@ -38,19 +38,6 @@ use stdClass;
|
||||
*/
|
||||
class fillin extends result {
|
||||
|
||||
/**
|
||||
* Export this data so it can be used as the context for a mustache template.
|
||||
*
|
||||
* @param renderer_base $output
|
||||
* @return stdClass
|
||||
*/
|
||||
public function export_for_template(renderer_base $output): stdClass {
|
||||
$data = parent::export_for_template($output);
|
||||
$data->content = $this->result->description;
|
||||
$data->description = get_string('result_fill-in', 'mod_h5pactivity');
|
||||
return $data;
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the options data structure.
|
||||
*
|
||||
|
@ -46,8 +46,13 @@ class longfillin extends result {
|
||||
*/
|
||||
public function export_for_template(renderer_base $output): stdClass {
|
||||
$data = parent::export_for_template($output);
|
||||
$data->content = reset($this->response);
|
||||
$userresponse = reset($this->response);
|
||||
$data->content = format_text($userresponse, FORMAT_PLAIN);
|
||||
$data->track = true;
|
||||
// Long fill-in is used for Essay type exercices. H5P adds
|
||||
// extra characters to the description in all fill-in interactions
|
||||
// but in the essay questions is unnecesary.
|
||||
$data->description = preg_replace('/__________$/', '', $data->description);
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
|
@ -40,5 +40,5 @@
|
||||
|
||||
}}
|
||||
<h3 class="w-100">
|
||||
{{description}}
|
||||
{{{description}}}
|
||||
</h3>
|
||||
|
55
mod/h5pactivity/tests/behat/result_fillin.feature
Normal file
55
mod/h5pactivity/tests/behat/result_fillin.feature
Normal file
@ -0,0 +1,55 @@
|
||||
@mod @mod_h5pactivity @core_h5p @_file_upload @_switch_iframe @javascript
|
||||
Feature: View fill the blanks attempt report
|
||||
In order to let users to review a fill the blanks attempt
|
||||
As a user
|
||||
I need to view fill in interactions in the report
|
||||
|
||||
Background:
|
||||
Given the following "users" exist:
|
||||
| username | firstname | lastname | email |
|
||||
| student1 | Student | 1 | student1@example.com |
|
||||
And the following "courses" exist:
|
||||
| fullname | shortname | category |
|
||||
| Course 1 | C1 | 0 |
|
||||
And the following "course enrolments" exist:
|
||||
| user | course | role |
|
||||
| student1 | C1 | student |
|
||||
And I log in as "admin"
|
||||
# No HTML should appear even with formatstringstriptags disabled.
|
||||
And I set the following administration settings values:
|
||||
| formatstringstriptags | 0 |
|
||||
And I am on "Course 1" course homepage with editing mode on
|
||||
And I add a "H5P" to section "1"
|
||||
And I set the following fields to these values:
|
||||
| Name | Awesome H5P package |
|
||||
| Description | Description |
|
||||
| Grading method | Average grade |
|
||||
And I upload "h5p/tests/fixtures/filltheblanks.h5p" file to "Package file" filemanager
|
||||
And I click on "Save and display" "button"
|
||||
And I log out
|
||||
|
||||
Scenario: View attempt in a fill the blanks content
|
||||
# Do an attempt.
|
||||
Given I log in as "student1"
|
||||
And I am on "Course 1" course homepage
|
||||
And I follow "Awesome H5P package"
|
||||
And I switch to "h5p-player" class iframe
|
||||
And I switch to "h5p-iframe" class iframe
|
||||
And I set the field with xpath "//input[contains(@aria-label,\"Blank input 1 of 4\")]" to "Brigadoon"
|
||||
And I set the field with xpath "//input[contains(@aria-label,\"Blank input 2 of 4\")]" to "Emerald city"
|
||||
And I set the field with xpath "//input[contains(@aria-label,\"Blank input 3 of 4\")]" to "Narnia"
|
||||
And I set the field with xpath "//input[contains(@aria-label,\"Blank input 4 of 4\")]" to "Canberra"
|
||||
And I click on "Check" "button" in the ".h5p-question-buttons" "css_element"
|
||||
And I switch to the main frame
|
||||
And I reload the page
|
||||
# Check attempt.
|
||||
When I follow "View my attempts"
|
||||
And I follow "View report"
|
||||
Then I should see "Of which countries are Berlin, Washington, Beijing, Canberra and Brasilia the capitals?"
|
||||
And I should see "brigadoon" in the "brasilia" "table_row"
|
||||
And "Your answer is incorrect" "icon" should exist in the "brasilia" "table_row"
|
||||
And I should see "emerald city" in the "washington" "table_row"
|
||||
And I should see "narnia" in the "berlin" "table_row"
|
||||
And "Your answer is incorrect" "icon" should exist in the "berlin" "table_row"
|
||||
And "Your answer is correct" "icon" should exist in the "canberra" "table_row"
|
||||
And I should not see "<p>"
|
46
mod/h5pactivity/tests/behat/result_longfillin.feature
Normal file
46
mod/h5pactivity/tests/behat/result_longfillin.feature
Normal file
@ -0,0 +1,46 @@
|
||||
@mod @mod_h5pactivity @core_h5p @_file_upload @_switch_iframe @javascript
|
||||
Feature: View essay attempt report
|
||||
In order to let users to review an essay attempt
|
||||
As a user
|
||||
I need to view long fill in interactions in the report
|
||||
|
||||
Background:
|
||||
Given the following "users" exist:
|
||||
| username | firstname | lastname | email |
|
||||
| student1 | Student | 1 | student1@example.com |
|
||||
And the following "courses" exist:
|
||||
| fullname | shortname | category |
|
||||
| Course 1 | C1 | 0 |
|
||||
And the following "course enrolments" exist:
|
||||
| user | course | role |
|
||||
| student1 | C1 | student |
|
||||
And I log in as "admin"
|
||||
# No HTML should appear even with formatstringstriptags disabled.
|
||||
And I set the following administration settings values:
|
||||
| formatstringstriptags | 0 |
|
||||
And I am on "Course 1" course homepage with editing mode on
|
||||
And I add a "H5P" to section "1"
|
||||
And I set the following fields to these values:
|
||||
| Name | Awesome H5P package |
|
||||
| Description | Description |
|
||||
| Grading method | Average grade |
|
||||
And I upload "h5p/tests/fixtures/basic_essay.h5p" file to "Package file" filemanager
|
||||
And I click on "Save and display" "button"
|
||||
And I log out
|
||||
|
||||
Scenario: View attempt essay content
|
||||
# Do an attempt.
|
||||
Given I log in as "student1"
|
||||
And I am on "Course 1" course homepage
|
||||
And I follow "Awesome H5P package"
|
||||
And I switch to "h5p-player" class iframe
|
||||
And I switch to "h5p-iframe" class iframe
|
||||
And I set the field with xpath "//textarea" to "This is a smurfing smurf"
|
||||
And I click on "Check" "button" in the ".h5p-question-buttons" "css_element"
|
||||
And I switch to the main frame
|
||||
And I reload the page
|
||||
# Check attempt.
|
||||
When I follow "View my attempts"
|
||||
And I follow "View report"
|
||||
Then I should see "This is a smurfing smurf"
|
||||
And I should not see "<strong>smurf</strong>"
|
Loading…
x
Reference in New Issue
Block a user