moodle/group/tests/behat/delete_groups.feature
Mark Nelson a2d3e3b6ca MDL-42276 core_group: added behat tests to automate group actions
1. Added new step definitions to check if an element exists or does not exist in another.
2. Added new step definitions to check if an element is readonly or is not readonly.
3. Automated testing for MDLQA-1812 and MDLQA-1813.

Added behat test for deleting groups/groupings with and without the
'moodle/course:changeidnumber' capability.

4. Automated MDLQA-2105.

Added behat test for creating groups/groupings without the
'moodle/course:changeidnumber' capability.

5. Automated MDLQA-2238 and MDLQA-2335.

Added behat test for updating groups/groupings with and without the
'moodle/course:changeidnumber' capability.
2013-11-11 18:06:50 -08:00

82 lines
3.2 KiB
Gherkin

@core @core_group
Feature: Automatic deletion of groups and groupings
In order to check the expected results occur when deleting groups and groupings in different scenarios
As a teacher
I need to create groups and groupings under different scenarios and check that the expected result occurs when attempting to delete them.
Background:
Given the following "courses" exists:
| fullname | shortname | format |
| Course 1 | C1 | topics |
And the following "users" exists:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@asd.com |
And the following "course enrolments" exists:
| user | course | role |
| teacher1 | C1 | editingteacher |
And I log in as "teacher1"
And I follow "Course 1"
And I expand "Users" node
And I follow "Groups"
And I press "Create group"
And I fill the moodle form with:
| Group name | Group (without ID) |
And I press "Save changes"
And I press "Create group"
And I fill the moodle form with:
| Group name | Group (with ID) |
| Group ID number | An ID |
And I press "Save changes"
And I follow "Groupings"
And I press "Create grouping"
And I fill the moodle form with:
| Grouping name | Grouping (without ID) |
And I press "Save changes"
And I press "Create grouping"
And I fill the moodle form with:
| Grouping name | Grouping (with ID) |
| Grouping ID number | An ID |
And I press "Save changes"
And I follow "Groups"
@javascript
Scenario: Delete groups and groupings with and without ID numbers
Given I select "Group (without ID) (0)" from "groups"
And I press "Delete selected group"
And I press "Yes"
Then the "groups" select box should not contain "Group (without ID) (0)"
And I select "Group (with ID) (0)" from "groups"
And I press "Delete selected group"
And I press "Yes"
And the "groups" select box should not contain "Group (with ID) (0)"
And I follow "Groupings"
And I click on "Delete" "link" in the "Grouping (without ID)" "table_row"
And I press "Yes"
And I should not see "Grouping (without ID)"
And I click on "Delete" "link" in the "Grouping (with ID)" "table_row"
And I press "Yes"
And I should not see "Grouping (with ID)"
@javascript
Scenario: Delete groups and groupings with and without ID numbers without the 'moodle/course:changeidnumber' capability
Given I log out
And I log in as "admin"
And I set the following system permissions of "Teacher" role:
| moodle/course:changeidnumber | Prevent |
And I log out
And I log in as "teacher1"
And I follow "Course 1"
And I expand "Users" node
And I follow "Groups"
When I select "Group (with ID) (0)" from "groups"
Then the "Delete selected group" "button" should be disabled
And I select "Group (without ID) (0)" from "groups"
And I press "Delete selected group"
And I press "Yes"
And I should not see "Group (without ID)"
And I follow "Groupings"
And "Delete" "link" should not exist in the "Grouping (with ID)" "table_row"
And I click on "Delete" "link" in the "Grouping (without ID)" "table_row"
And I press "Yes"
And I should not see "Grouping (without ID)"