Skip to content

Commit

Permalink
MDL-82946 qbank: Behat coverage for questions bulk actions
Browse files Browse the repository at this point in the history
  • Loading branch information
andelacruz authored and lameze committed Dec 3, 2024
1 parent a798b1d commit 192fc68
Show file tree
Hide file tree
Showing 2 changed files with 73 additions and 10 deletions.
43 changes: 36 additions & 7 deletions question/bank/bulkmove/tests/behat/bulk_move.feature
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,21 @@ Feature: Use the qbank plugin manager page for bulkmove
In order to check the plugin behaviour with enable and disable

Background:
Given the following "courses" exist:
Given the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@example.com |
And the following "courses" exist:
| fullname | shortname | category |
| Course 1 | C1 | 0 |
| Course 2 | C2 | 0 |
| Course 3 | C3 | 0 |
And the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@example.com |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
| teacher1 | C2 | editingteacher |
| user | course | role |
| teacher1 | C1 | editingteacher |
| teacher1 | C2 | editingteacher |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
And the following "activities" exist:
| activity | name | course | idnumber |
| quiz | Test quiz | C1 | quiz1 |
Expand All @@ -29,6 +32,8 @@ Feature: Use the qbank plugin manager page for bulkmove
| Activity module | qbank3 | Test questions 4 |
| Activity module | qbank1 | Test questions 5 |
| Activity module | quiz1 | Test questions 6 |
| Course | C1 | Test questions |
| Course | C1 | Moved questions |
And the following "questions" exist:
| questioncategory | qtype | name | questiontext |
| Test questions 1 | truefalse | First question | Answer the first question |
Expand Down Expand Up @@ -93,3 +98,27 @@ Feature: Use the qbank plugin manager page for bulkmove
And I click on "Confirm" "button"
And I wait until the page is ready
Then I should see "Questions successfully moved"

@javascript
Scenario: Questions can be bulk moved from the question bank
Given the following "questions" exist:
| questioncategory | qtype | name | questiontext |
| Test questions | truefalse | Question 1 | Answer the first question |
| Test questions | missingtype | Question 2 | Write something |
| Test questions | essay | Question 3 | frog |
And I am on the "Course 1" "core_question > course question bank" page logged in as teacher1
# Select questions to be moved.
And I click on "Question 1" "checkbox"
And I click on "Question 2" "checkbox"
And I click on "With selected" "button"
When I press "Move to"
# Select a different category to move the questions into.
And I open the autocomplete suggestions list in the ".search-categories" "css_element"
And I click on "Moved questions" item in the autocomplete list
And I press "Move questions"
And I click on "Confirm" "button"
# Confirm that selected questions are moved to selected category while unselected questions are not moved.
Then I should see "Moved questions"
And I should see "Question 1"
And I should see "Question 2"
And I should not see "Question 3"
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,22 @@ Feature: Use the qbank plugin manager page for deletequestion
In order to check the plugin behaviour with enable and disable

Background:
Given the following "courses" exist:
Given the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@example.com |
And the following "courses" exist:
| fullname | shortname | category |
| Course 1 | C1 | 0 |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
And the following "activities" exist:
| activity | name | course | idnumber |
| quiz | Test quiz | C1 | quiz1 |
And the following "question categories" exist:
| contextlevel | reference | name |
| Activity module | quiz1 | Test questions |
| contextlevel | reference | name |
| Activity module | quiz1 | Test questions |
| Course | C1 | Course questions |
And the following "questions" exist:
| questioncategory | qtype | name | questiontext |
| Test questions | truefalse | First question | Answer the first question |
Expand Down Expand Up @@ -70,3 +77,30 @@ Feature: Use the qbank plugin manager page for deletequestion
When I click on "Delete" "button" in the "Delete question?" "dialogue"
Then I should not see "Third question"
And "foo" "autocomplete_selection" should exist

@javascript
Scenario: Questions can be bulk deleted from the question bank
Given the following "questions" exist:
| questioncategory | qtype | name | questiontext |
| Course questions | truefalse | Question 1 | Answer the first question |
| Course questions | missingtype | Question 2 | Write something |
| Course questions | essay | Question 3 | frog |
# Navigate to question bank.
And I am on the "Course 1" "core_question > course question bank" page logged in as teacher1
# Select questions to be deleted.
# And I pause
And I click on "Question 1" "checkbox"
And I click on "Question 2" "checkbox"
And I click on "With selected" "button"
When I press "Delete"
# Confirm that delete confirmation message is displayed.
Then I should see "This will delete the following questions and all their versions:"
# Confirm that selected questions are listed on the confirmation dialog.
And I should see "Question 1 v1"
And I should see "Question 2 v1"
# Delete selected questions.
And I press "Delete"
# Confirm that selected questions are deleted while unselected questions still exist.
And I should not see "Question 1"
And I should not see "Question 2"
And I should see "Question 3"

0 comments on commit 192fc68

Please sign in to comment.