MDL-45894 navigation: Behat tests for user navigation.

Part of MDL-45774
This commit is contained in:
Adrian Greeve 2015-02-10 15:03:37 +08:00
parent c9451960e3
commit b6c42eb0f0

View File

@ -0,0 +1,101 @@
@core @core_user
Feature: The student can navigate to the My grades page and user grade report.
In order to view my grades and the user grade report
As a user
I need to log in and browse to my grades.
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| student1 | Student | 1 | student1@asd.com |
| student2 | Student | 2 | student2@asd.com |
| teacher1 | Teacher | 1 | teacher1@asd.com |
| parent1 | Parent | 1 | parent1@asd.com |
And the following "courses" exist:
| fullname | shortname | format |
| Course 1 | C1 | topics |
| Course 2 | C2 | topics |
And the following "course enrolments" exist:
| user | course | role |
| student1 | C1 | student |
| student2 | C1 | student |
| teacher1 | C1 | editingteacher |
| student1 | C2 | student |
And the following "activities" exist:
| activity | course | idnumber | name | intro | grade |
| assign | C1 | a1 | Test assignment one | Submit something! | 300 |
| assign | C1 | a2 | Test assignment two | Submit something! | 100 |
| assign | C1 | a3 | Test assignment three | Submit something! | 150 |
| assign | C2 | a4 | Test assignment four | Submit something! | 150 |
And I log in as "teacher1"
And I follow "Course 1"
And I follow "Grades"
And I turn editing mode on
And I give the grade "150.00" to the user "Student 1" for the grade item "Test assignment one"
And I give the grade "67.00" to the user "Student 1" for the grade item "Test assignment two"
And I press "Save changes"
And I log out
Scenario: Navigation to My grades and the user grade report.
When I log in as "student1"
And I follow "Student 1"
And I follow "My grades"
Then the following should exist in the "overview-grade" table:
| Course name | Grade |
| C2 | - |
| C1 | 217.00 |
And I follow "C1"
And the following should exist in the "user-grade" table:
| Grade item | Calculated weight | Grade | Range | Percentage | Contribution to course total |
| Test assignment one | 75.00 % | 150.00 | 0300 | 50.00 % | 37.50 % |
| Test assignment two | 25.00 % | 67.00 | 0100 | 67.00 % | 16.75 % |
| Test assignment three | 0.00 %( Empty ) | - | 0150 | - | 0.00 % |
Scenario: Change My grades settings to go to a custom url.
When I log in as "admin"
And I set the following administration settings values:
| grade_mygrades_report | External URL |
| gradereport_mygradeurl | /badges/mybadges.php |
And I log out
And I log in as "student1"
And I follow "Student 1"
And I follow "My grades"
Then I should see "My badges from Acceptance test site web site"
@javascript
Scenario: Log in as a parent and view a childs grades.
When I log in as "admin"
And I follow "Turn editing on"
And I add the "Mentees" block
And I navigate to "Define roles" node in "Site administration > Users > Permissions"
And I click on "Add a new role" "button"
And I click on "Continue" "button"
And I set the following fields to these values:
| Short name | Parent |
| Custom full name | Parent |
| contextlevel30 | 1 |
| moodle/user:editprofile | 1 |
| moodle/user:viewalldetails | 1 |
| moodle/user:viewuseractivitiesreport | 1 |
| moodle/user:viewdetails | 1 |
And I click on "Create this role" "button"
And I navigate to "Browse list of users" node in "Site administration > Users > Accounts"
And I follow "Student 1"
And I navigate to "Assign roles relative to this user" node in "Profile settings for Student 1 > Roles"
And I follow "Parent"
And I click on "//select[@id='addselect']/descendant::option[contains(., 'Parent 1 (parent1@asd.com)')]" "xpath_element"
And I click on "Add" "button"
And I log out
And I log in as "parent1"
And I follow "Student 1"
And I follow "Grades"
Then the following should exist in the "overview-grade" table:
| Course name | Grade |
| C2 | - |
| C1 | 217.00 |
And I follow "C1"
And the following should exist in the "user-grade" table:
| Grade item | Calculated weight | Grade | Range | Percentage | Contribution to course total |
| Test assignment one | 75.00 % | 150.00 | 0300 | 50.00 % | 37.50 % |
| Test assignment two | 25.00 % | 67.00 | 0100 | 67.00 % | 16.75 % |
| Test assignment three | 0.00 %( Empty ) | - | 0150 | - | 0.00 % |