Merge branch 'MDL-58490-master' of git://github.com/lameze/moodle
[moodle.git] / blocks / navigation / tests / behat / view_my_courses.feature
1 @block @block_navigation
2 Feature: View my courses in navigation block
3   In order to navigate to my courses
4   As a student
5   I need my courses displayed in the navigation block
7   Background:
8     Given the following "users" exist:
9       | username | firstname | lastname | email |
10       | student1 | Student | 1 | student1@example.com |
11     And the following "categories" exist:
12       | name  | category | idnumber |
13       | cat1  | 0        | cat1     |
14       | cat2  | 0        | cat2     |
15       | cat3  | 0        | cat3     |
16       | cat31 | cat3     | cat31    |
17       | cat32 | cat3     | cat32    |
18       | cat33 | cat3     | cat33    |
19     And the following "courses" exist:
20       | fullname | shortname | category |
21       | Course1  | c1        | cat1     |
22       | Course2  | c2        | cat2     |
23       | Course31 | c31       | cat31    |
24       | Course32 | c32       | cat32    |
25       | Course331| c331      | cat33    |
26       | Course332| c332      | cat33    |
27     And the following "course enrolments" exist:
28       | user     | course | role    |
29       | student1 | c1     | student |
30       | student1 | c31    | student |
31       | student1 | c331   | student |
32     And I log in as "admin"
33     And I am on site homepage
34     And I turn editing mode on
35     And I add the "Navigation" block if not present
36     And I configure the "Navigation" block
37     And I set the following fields to these values:
38       | Page contexts | Display throughout the entire site |
39     And I press "Save changes"
40     And I log out
42   @javascript
43   Scenario: The plain list of enrolled courses is shown
44     Given the following config values are set as admin:
45       | navshowmycoursecategories | 0 |
46     And I log in as "student1"
47     When I click on "Dashboard" "link" in the "Navigation" "block"
48     Then I should not see "cat1" in the "Navigation" "block"
49     And I should not see "cat2" in the "Navigation" "block"
50     And I should see "c1" in the "Navigation" "block"
51     And I should see "c31" in the "Navigation" "block"
52     And I should see "c331" in the "Navigation" "block"
53     And I should not see "c2" in the "Navigation" "block"
54     And I should not see "c32" in the "Navigation" "block"
55     And I should not see "c332" in the "Navigation" "block"
57   @javascript
58   Scenario: The nested list of enrolled courses is shown
59     Given the following config values are set as admin:
60       | navshowmycoursecategories | 1 |
61     And I log in as "student1"
62     When I click on "Dashboard" "link" in the "Navigation" "block"
63     Then I should see "cat1" in the "Navigation" "block"
64     And I should see "cat3" in the "Navigation" "block"
65     And I should not see "cat2" in the "Navigation" "block"
66     And I expand "cat3" node
67     And I should see "cat31" in the "Navigation" "block"
68     And I should see "cat33" in the "Navigation" "block"
69     And I should not see "cat32" in the "Navigation" "block"
70     And I expand "cat31" node
71     And I should see "c31" in the "Navigation" "block"
72     And I expand "cat33" node
73     And I should see "c331" in the "Navigation" "block"
74     And I should not see "c332" in the "Navigation" "block"
76   @javascript
77   Scenario: I can expand categories and courses as guest
78     Given the following config values are set as admin:
79       | navshowmycoursecategories | 1 |
80       | navshowallcourses         | 1 |
81     And I expand "Courses" node
82     And I should see "cat1" in the "Navigation" "block"
83     And I should see "cat2" in the "Navigation" "block"
84     And I should see "cat3" in the "Navigation" "block"
85     And I should not see "cat31" in the "Navigation" "block"
86     And I should not see "cat32" in the "Navigation" "block"
87     And I should not see "cat331" in the "Navigation" "block"
88     And I should not see "c1" in the "Navigation" "block"
89     And I should not see "c2" in the "Navigation" "block"
90     And I should not see "c31" in the "Navigation" "block"
91     And I should not see "c32" in the "Navigation" "block"
92     When I expand "cat3" node
93     And I expand "cat31" node
94     And I expand "cat1" node
95     Then I should see "cat1" in the "Navigation" "block"
96     And I should see "cat2" in the "Navigation" "block"
97     And I should see "cat3" in the "Navigation" "block"
98     And I should see "cat31" in the "Navigation" "block"
99     And I should see "cat32" in the "Navigation" "block"
100     And I should not see "cat331" in the "Navigation" "block"
101     And I should see "c1" in the "Navigation" "block"
102     And I should not see "c2" in the "Navigation" "block"
103     And I should see "c31" in the "Navigation" "block"
104     And I should not see "c32" in the "Navigation" "block"