MDL-8501 mod_forum: Behat test for neighbour discussions
[moodle.git] / mod / forum / tests / behat / discussion_navigation.feature
1 @mod @mod_forum
2 Feature: A user can navigate to previous and next discussions
3   In order to get go the previous discussion
4   As a user
5   I need to click on the previous discussion link
7   Background:
8     Given the following "users" exist:
9       | username | firstname | lastname | email |
10       | student1 | Student | 1 | student1@asd.com |
11       | student2 | Student | 2 | student2@asd.com |
12     And the following "courses" exist:
13       | fullname | shortname | category |
14       | Course 1 | C1 | 0 |
15     And the following "course enrolments" exist:
16       | user | course | role |
17       | student1 | C1 | student |
18       | student2 | C1 | student |
19     And I log in as "admin"
20     And I follow "Course 1"
21     And I navigate to "Groups" node in "Users"
22     And I press "Create group"
23     And I set the following fields to these values:
24       | Group name | Group 1 |
25     And I press "Save changes"
26     And I press "Create group"
27     And I set the following fields to these values:
28       | Group name | Group 2 |
29     And I press "Save changes"
30     And I add "Student 1" user to "Group 1" group members
31     And I add "Student 2" user to "Group 2" group members
32     And I am on homepage
33     And I follow "Course 1"
34     And I turn editing mode on
36   @javascript
37   Scenario: A user can navigate between discussions
38     Given I add a "Forum" to section "1" and I fill the form with:
39       | Forum name | Test forum name |
40       | Description | Test forum description |
41     And I add a new discussion to "Test forum name" forum with:
42       | Subject | Discussion 1 |
43       | Message | Test post message |
44     And I add a new discussion to "Test forum name" forum with:
45       | Subject | Discussion 2 |
46       | Message | Test post message |
47     And I add a new discussion to "Test forum name" forum with:
48       | Subject | Discussion 3 |
49       | Message | Test post message |
50     When I follow "Discussion 3"
51     Then I should not see "Discussion 1"
52     And I should see "Discussion 2"
53     And I follow "Discussion 2"
54     And I should see "Discussion 1"
55     And I should see "Discussion 3"
56     And I follow "Discussion 1"
57     And I should see "Discussion 2"
58     And I should not see "Discussion 3"
59     And I follow "Reply"
60     And I set the following fields to these values:
61       | Message | Answer to discussion |
62     And I press "Post to forum"
63     And I should not see "Discussion 2"
64     And I should see "Discussion 3"
65     And I follow "Discussion 3"
66     And I should see "Discussion 1"
67     And I should see "Discussion 2"
68     And I follow "Discussion 2"
69     And I should not see "Discussion 1"
70     And I should see "Discussion 3"
72   @javascript
73   Scenario: A user can navigate between discussions with visible groups
74     Given I add a "Forum" to section "1" and I fill the form with:
75       | Forum name | Test forum name |
76       | Description | Test forum description |
77       | Group mode | Visible groups |
78     And I add a new discussion to "Test forum name" forum with:
79       | Subject | Discussion 1 Group 0 |
80       | Message | Test post message |
81     And I add a new discussion to "Test forum name" forum with:
82       | Subject | Discussion 2 Group 0 |
83       | Message | Test post message |
84     And I add a new discussion to "Test forum name" forum with:
85       | Subject | Discussion 1 Group 1 |
86       | Message | Test post message |
87       | Group   | Group 1 |
88     And I add a new discussion to "Test forum name" forum with:
89       | Subject | Discussion 2 Group 1 |
90       | Message | Test post message |
91       | Group   | Group 1 |
92     And I add a new discussion to "Test forum name" forum with:
93       | Subject | Discussion 1 Group 2 |
94       | Message | Test post message |
95       | Group   | Group 2 |
96     And I add a new discussion to "Test forum name" forum with:
97       | Subject | Discussion 2 Group 2 |
98       | Message | Test post message |
99       | Group   | Group 2 |
100     And I log out
101     When I log in as "student1"
102     And I follow "Course 1"
103     And I follow "Test forum name"
104     And I set the field "Visible groups" to "All participants"
105     And I follow "Discussion 1 Group 0"
106     Then I should see "Discussion 2 Group 0"
107     And I should not see "Group 1"
108     And I should not see "Group 2"
109     And I follow "Discussion 2 Group 0"
110     And I should see "Discussion 1 Group 0"
111     And I should see "Discussion 1 Group 1"
112     And I follow "Discussion 1 Group 1"
113     And I should see "Discussion 2 Group 0"
114     And I should see "Discussion 2 Group 1"
115     And I follow "Test forum name"
116     And I follow "Discussion 1 Group 2"
117     And I should see "Discussion 2 Group 1"
118     And I should see "Discussion 2 Group 2"
119     And I follow "Test forum name"
120     And I set the field "Visible groups" to "Group 1"
121     And I follow "Discussion 1 Group 1"
122     Then I should see "Discussion 2 Group 0"
123     And I should see "Discussion 2 Group 1"
124     And I follow "Discussion 2 Group 1"
125     And I should see "Discussion 1 Group 1"
126     And I should not see "Group 2"
128   @javascript
129   Scenario: A user can navigate between discussions with separate groups
130     Given I add a "Forum" to section "1" and I fill the form with:
131       | Forum name | Test forum name |
132       | Description | Test forum description |
133       | Group mode | Separate groups |
134     And I add a new discussion to "Test forum name" forum with:
135       | Subject | Discussion 1 Group 0 |
136       | Message | Test post message |
137     And I add a new discussion to "Test forum name" forum with:
138       | Subject | Discussion 2 Group 0 |
139       | Message | Test post message |
140     And I add a new discussion to "Test forum name" forum with:
141       | Subject | Discussion 1 Group 1 |
142       | Message | Test post message |
143       | Group   | Group 1 |
144     And I add a new discussion to "Test forum name" forum with:
145       | Subject | Discussion 2 Group 1 |
146       | Message | Test post message |
147       | Group   | Group 1 |
148     And I add a new discussion to "Test forum name" forum with:
149       | Subject | Discussion 1 Group 2 |
150       | Message | Test post message |
151       | Group   | Group 2 |
152     And I add a new discussion to "Test forum name" forum with:
153       | Subject | Discussion 2 Group 2 |
154       | Message | Test post message |
155       | Group   | Group 2 |
156     And I log out
157     When I log in as "student1"
158     And I follow "Course 1"
159     And I follow "Test forum name"
160     And I follow "Discussion 1 Group 1"
161     Then I should see "Discussion 2 Group 0"
162     And I should see "Discussion 2 Group 1"
163     And I follow "Discussion 2 Group 1"
164     And I should see "Discussion 1 Group 1"
165     And I should not see "Group 2"