Merge branch 'MDL-48373' of git://github.com/timhunt/moodle
[moodle.git] / question / tests / behat / copy_questions.feature
1 @core @core_question
2 Feature: A teacher can duplicate questions in the question bank
3   In order to reuse questions
4   As a teacher
5   I need to duplicate questions and make small changes
7   Background:
8     Given the following "users" exist:
9       | username | firstname | lastname | email            |
10       | teacher1 | Teacher   | 1        | teacher1@asd.com |
11     And the following "courses" exist:
12       | fullname | shortname | format |
13       | Course 1 | C1        | weeks  |
14     And the following "course enrolments" exist:
15       | user     | course | role           |
16       | teacher1 | C1     | editingteacher |
17     And the following "question categories" exist:
18       | contextlevel | reference | name           |
19       | Course       | C1        | Test questions |
20     And the following "questions" exist:
21       | questioncategory | qtype | name                       | questiontext                  |
22       | Test questions   | essay | Test question to be copied | Write about whatever you want |
23     And I log in as "teacher1"
24     And I follow "Course 1"
25     And I navigate to "Questions" node in "Course administration > Question bank"
27   @javascript
28   Scenario: Duplicating a previously created question
29     When I click on "Duplicate" "link" in the "Test question to be copied" "table_row"
30     And I set the following fields to these values:
31       | Question name | Duplicated question name                |
32       | Question text | Write a lot about duplicating questions |
33     And I press "id_submitbutton"
34     Then I should see "Duplicated question name"
35     And I should see "Test question to be copied"
36     And "Duplicated question name" row "Last modified by" column of "categoryquestions" table should contain "Teacher 1"
37     And "Test question to be copied" row "Created by" column of "categoryquestions" table should contain "Admin User"
39   @javascript
40   Scenario: Duplicated questions automatically get a new name suggested
41     When I click on "Duplicate" "link" in the "Test question to be copied" "table_row"
42     Then the field "Question name" matches value "Test question to be copied (copy)"
44   @javascript
45   Scenario: The duplicate operation can be cancelled
46     When I click on "Duplicate" "link" in the "Test question to be copied" "table_row"
47     And I press "Cancel"
48     Then I should see "Test question to be copied"
49     And the field "Select a category" matches value "Test questions (1)"