7e87610f57ac3803cf3d546424563a63e01c8e9a
[moodle.git] / mod / quiz / tests / behat / completion_condition_attempts_used.feature
1 @mod @mod_quiz
2 Feature: Set a quiz to be marked complete when the student uses all attempts allowed
3   In order to ensure a student has learned the material before being marked complete
4   As a teacher
5   I need to set a quiz to complete when the student receives a passing grade, or completed_fail if they use all attempts without passing
7   Background:
8     Given the following "users" exist:
9       | username | firstname | lastname | email                |
10       | student1 | Student   | 1        | student1@example.com |
11       | teacher1 | Teacher   | 1        | teacher1@example.com |
12     And the following "courses" exist:
13       | fullname | shortname | category | enablecompletion |
14       | Course 1 | C1        | 0        | 1                |
15     And the following "course enrolments" exist:
16       | user     | course | role           |
17       | teacher1 | C1     | editingteacher |
18       | student1 | C1     | student        |
19     And the following config values are set as admin:
20       | grade_item_advanced | hiddenuntil |
21     And the following "question categories" exist:
22       | contextlevel | reference | name           |
23       | Course       | C1        | Test questions |
24     And the following "questions" exist:
25       | questioncategory | qtype     | name           | questiontext              |
26       | Test questions   | truefalse | First question | Answer the first question |
27     And the following "activities" exist:
28       | activity   | name           | course | idnumber | attempts | gradepass | completion | completionattemptsexhausted |
29       | quiz       | Test quiz name | C1     | quiz1    | 2        | 5.00      | 2          | 1                           |
30     And quiz "Test quiz name" contains the following questions:
31       | question       | page |
32       | First question | 1    |
33     And user "student1" has attempted "Test quiz name" with responses:
34       | slot | response |
35       |   1  | False    |
37   Scenario: student1 uses up both attempts without passing
38     When I log in as "student1"
39     And I am on "Course 1" course homepage
40     And the "Test quiz name" "quiz" activity with "auto" completion should be marked as not complete
41     And I follow "Test quiz name"
42     And I press "Re-attempt quiz"
43     And I set the field "False" to "1"
44     And I press "Finish attempt ..."
45     And I press "Submit all and finish"
46     And I am on "Course 1" course homepage
47     Then "Completed: Test quiz name" "icon" should exist in the "li.modtype_quiz" "css_element"
48     And I log out
49     And I log in as "teacher1"
50     And I am on "Course 1" course homepage
51     And I navigate to "Reports > Activity completion" in current page administration
52     And "Completed" "icon" should exist in the "Student 1" "table_row"