MDL-60515 groups: Behat test for viewing the group description.
[moodle.git] / group / tests / behat / group_description.feature
1 @core @core_group
2 Feature: The description of a group can be viewed by students and teachers
3   In order to view the description of a group
4   As a teacher
5   I need to create groups and add descriptions to them.
7   Background:
8     Given the following "courses" exist:
9       | fullname | shortname | format |
10       | Course 1 | C1 | topics |
11     And the following "users" exist:
12       | username | firstname | lastname | email |
13       | teacher1 | Teacher | 1 | teacher1@example.com |
14       | student1 | Student | 1 | student1@example.com |
15       | student2 | Student | 2 | student2@example.com |
16     And the following "course enrolments" exist:
17       | user | course | role |
18       | teacher1 | C1 | editingteacher |
19       | student1 | C1 | student |
20       | student2 | C1 | student |
22   @javascript
23   Scenario: A student can see the group description when visible groups are set. Teachers can see group details.
24     Given I log in as "teacher1"
25     And I am on "Course 1" course homepage
26     And I navigate to "Edit settings" in current page administration
27     And I set the following fields to these values:
28       | Group mode | Visible groups |
29     And I press "Save and display"
30     And I navigate to "Users > Groups" in current page administration
31     And I press "Create group"
32     And I set the following fields to these values:
33       | Group name | Group A |
34       | Group description | Description for Group A |
35     And I press "Save changes"
36     And I press "Create group"
37     And I set the following fields to these values:
38       | Group name | Group B |
39     And I press "Save changes"
40     And I add "Student 1 (student1@example.com)" user to "Group A" group members
41     And I add "Student 2 (student2@example.com)" user to "Group B" group members
42     And I am on "Course 1" course homepage
43     And I navigate to course participants
44     And I open the autocomplete suggestions list
45     And I click on "Group: Group A" item in the autocomplete list
46     And I should see "Description for Group A"
47     And ".groupinfobox" "css_element" should exist
48     And I should see "Description for Group A"
49     And I click on "Group: Group A" "autocomplete_selection"
50     And I open the autocomplete suggestions list
51     And I click on "Group: Group B" item in the autocomplete list
52     And ".groupinfobox" "css_element" should not exist
53     And I log out
54     When I log in as "student1"
55     And I am on "Course 1" course homepage
56     And I navigate to course participants
57     Then I should see "Description for Group A"
58     And I log out
59     And I log in as "student2"
60     And I am on "Course 1" course homepage
61     And I navigate to course participants
62     And ".groupinfobox" "css_element" should not exist
64   @javascript
65   Scenario: A student can not see the group description when separate groups are set. Teachers can see group details.
66     Given I log in as "teacher1"
67     And I am on "Course 1" course homepage
68     And I navigate to "Edit settings" in current page administration
69     And I set the following fields to these values:
70       | Group mode | Separate groups |
71     And I press "Save and display"
72     And I navigate to "Users > Groups" in current page administration
73     And I press "Create group"
74     And I set the following fields to these values:
75       | Group name | Group A |
76       | Group description | Description for Group A |
77     And I press "Save changes"
78     And I press "Create group"
79     And I set the following fields to these values:
80       | Group name | Group B |
81     And I press "Save changes"
82     And I add "Student 1 (student1@example.com)" user to "Group A" group members
83     And I add "Student 2 (student2@example.com)" user to "Group B" group members
84     And I am on "Course 1" course homepage
85     And I navigate to course participants
86     And I open the autocomplete suggestions list
87     And I click on "Group: Group A" item in the autocomplete list
88     And I should see "Description for Group A"
89     And ".groupinfobox" "css_element" should exist
90     And I click on "Group: Group A" "autocomplete_selection"
91     And I open the autocomplete suggestions list
92     And I click on "Group: Group B" item in the autocomplete list
93     And ".groupinfobox" "css_element" should not exist
94     And I log out
95     When I log in as "student1"
96     And I am on "Course 1" course homepage
97     And I navigate to course participants
98     Then I should not see "Description for Group A"
99     And ".groupinfobox" "css_element" should not exist
100     And I log out
101     And I log in as "student2"
102     And I am on "Course 1" course homepage
103     And I navigate to course participants
104     And ".groupinfobox" "css_element" should not exist