This repository has been archived by the owner on Apr 8, 2022. It is now read-only.
forked from moodle/moodle
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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.
- Loading branch information
Showing
4 changed files
with
298 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
@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)" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
@core @core_group | ||
Feature: Automatic updating of groups and groupings | ||
In order to check the expected results occur when updating 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 update 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: Update groups and groupings with ID numbers | ||
Given I select "Group (with ID)" from "groups" | ||
And I press "Edit group settings" | ||
And the "idnumber" field should match "An ID" value | ||
And I fill the moodle form with: | ||
| Group name | Group (with ID) (updated) | | ||
| Group ID number | An ID (updated) | | ||
When I press "Save changes" | ||
Then I should see "Group (with ID) (updated)" | ||
And I select "Group (with ID) (updated)" from "groups" | ||
And I press "Edit group settings" | ||
And the "idnumber" field should match "An ID (updated)" value | ||
And I press "Save changes" | ||
And I follow "Groupings" | ||
And I click on "Edit" "link" in the "Grouping (with ID)" "table_row" | ||
And the "idnumber" field should match "An ID" value | ||
And I fill the moodle form with: | ||
| Grouping name | Grouping (with ID) (updated) | | ||
| Grouping ID number | An ID (updated) | | ||
And I press "Save changes" | ||
And I should see "Grouping (with ID) (updated)" | ||
And I click on "Edit" "link" in the "Grouping (with ID) (updated)" "table_row" | ||
And the "idnumber" field should match "An ID (updated)" value | ||
|
||
@javascript | ||
Scenario: Update groups and groupings with 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" | ||
And I select "Group (with ID)" from "groups" | ||
When I press "Edit group settings" | ||
Then the "idnumber" "field" should be readonly | ||
And the "idnumber" field should match "An ID" value | ||
And I fill the moodle form with: | ||
| Group name | Group (with ID) (updated) | | ||
And I press "Save changes" | ||
And I should see "Group (with ID) (updated)" | ||
And I select "Group (with ID) (updated)" from "groups" | ||
And I press "Edit group settings" | ||
And the "idnumber" "field" should be readonly | ||
And the "idnumber" field should match "An ID" value | ||
And I press "Save changes" | ||
And I follow "Groupings" | ||
And I click on "Edit" "link" in the "Grouping (with ID)" "table_row" | ||
And the "idnumber" "field" should be readonly | ||
And the "idnumber" field should match "An ID" value | ||
And I fill the moodle form with: | ||
| Grouping name | Grouping (with ID) (updated) | | ||
And I press "Save changes" | ||
And I should see "Grouping (with ID) (updated)" | ||
And I click on "Edit" "link" in the "Grouping (with ID) (updated)" "table_row" | ||
And the "idnumber" "field" should be readonly | ||
And the "idnumber" field should match "An ID" value | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters