MDL-63352 block_timeline: Persist user preference on timeline
[moodle.git] / blocks / timeline / tests / behat / block_timeline_courses.feature
CommitLineData
1e44de35 1@block @block_timeline @javascript
b8ecdc48 2Feature: The timeline block allows users to see upcoming courses
1e44de35
RW
3 In order to enable the timeline block
4 As a student
5 I can add the timeline block to my dashboard
6
7 Background:
8 Given the following "users" exist:
9 | username | firstname | lastname | email | idnumber |
10 | student1 | Student | 1 | student1@example.com | S1 |
11 | student2 | Student | 2 | student2@example.com | S2 |
12 And the following "courses" exist:
13 | fullname | shortname | category | startdate | enddate |
14 | Course 1 | C1 | 0 | ##yesterday## | ##tomorrow## |
15 | Course 2 | C2 | 0 | ##yesterday## | ##tomorrow## |
16 | Course 3 | C3 | 0 | ##yesterday## | ##tomorrow## |
17 | Course 4 | C4 | 0 | ##first day of next month## | ##last day of next month## |
18 And the following "activities" exist:
19 | activity | course | idnumber | name | intro | timeopen | timeclose |
20 | choice | C2 | choice1 | Test choice 1 | Test choice description | ##yesterday## | ##tomorrow## |
21 | choice | C1 | choice2 | Test choice 2 | Test choice description | ##1 month ago## | ##15 days ago## |
22 | choice | C3 | choice3 | Test choice 3 | Test choice description | ##first day of +5 months## | ##last day of +5 months## |
23 | feedback | C2 | feedback1 | Test feedback 1 | Test feedback description | ##yesterday## | ##tomorrow## |
24 | feedback | C1 | feedback2 | Test feedback 2 | Test feedback description | ##first day of +10 months## | ##last day of +10 months## |
25 | feedback | C3 | feedback3 | Test feedback 3 | Test feedback description | ##first day of +5 months## | ##last day of +5 months## |
26 | feedback | C4 | feedback4 | Test feedback 4 | Test feedback description | ##yesterday## | ##tomorrow## |
27 And the following "activities" exist:
28 | activity | course | idnumber | name | intro | timeopen | duedate |
29 | assign | C1 | assign1 | Test assign 1 | Test assign description | ##1 month ago## | ##yesterday## |
30 And the following "course enrolments" exist:
31 | user | course | role |
32 | student1 | C1 | student |
33 | student1 | C2 | student |
34 | student1 | C3 | student |
35 | student1 | C4 | student |
36
37 Scenario: Next 30 days in course view
38 Given I log in as "student1"
39 And I click on "Sort" "button" in the "Timeline" "block"
40 When I click on "Sort by courses" "link" in the "Timeline" "block"
41 Then I should see "Course 1" in the "Timeline" "block"
42 And I should see "Course 2" in the "Timeline" "block"
43 And I should see "More courses" in the "Timeline" "block"
44 And I should see "Test choice 1 closes" in the "Timeline" "block"
45 And I should see "Test feedback 1 closes" in the "Timeline" "block"
46 And I should not see "Course 3" in the "Timeline" "block"
47 And I should not see "Test choice 2 closes" in the "Timeline" "block"
48 And I should not see "Test choice 3 closes" in the "Timeline" "block"
49 And I should not see "Test feedback 2 closes" in the "Timeline" "block"
50 And I should not see "Test feedback 3 closes" in the "Timeline" "block"
51 And I should not see "Test assign 1 is due" in the "Timeline" "block"
52
53 Scenario: All in course view
54 Given I log in as "student1"
55 And I click on "Next 30 days" "button" in the "Timeline" "block"
56 And I click on "All" "link" in the "Timeline" "block"
57 And I click on "Sort" "button" in the "Timeline" "block"
58 And I click on "Sort by courses" "link" in the "Timeline" "block"
59 When I click on "More courses" "button" in the "Timeline" "block"
60 Then I should see "Course 3" in the "Timeline" "block"
61 And I should see "Course 2" in the "Timeline" "block"
62 And I should see "Course 1" in the "Timeline" "block"
63 And I should see "Test choice 1 closes" in the "Timeline" "block"
64 And I should see "Test choice 3 closes" in the "Timeline" "block"
65 And I should see "Test feedback 1 closes" in the "Timeline" "block"
66 And I should see "Test feedback 2 closes" in the "Timeline" "block"
67 And I should see "Test feedback 3 closes" in the "Timeline" "block"
68 And I should see "Test assign 1 is due" in the "Timeline" "block"
69 And I should not see "More courses" in the "Timeline" "block"
70 And I should not see "Course 4" in the "Timeline" "block"
71 And I should not see "Test choice 2 closes" in the "Timeline" "block"
72 And I should not see "Test feedback 4 closes" in the "Timeline" "block"
9e95193e
P
73
74 Scenario: Persistent sort filter
75 Given I log in as "student1"
76 And I click on "Sort" "button" in the "Timeline" "block"
77 And I click on "Sort by dates" "link" in the "Timeline" "block"
78 And I click on "Sort" "button" in the "Timeline" "block"
79 And I click on "Sort by courses" "link" in the "Timeline" "block"
80 And I reload the page
81 Then I should see "Course 1" in the "Timeline" "block"
82 And I should see "Course 2" in the "Timeline" "block"
83 And I should see "More courses" in the "Timeline" "block"
84 And I should see "Test choice 1 closes" in the "Timeline" "block"
85 And I should see "Test feedback 1 closes" in the "Timeline" "block"
86 And I should not see "Course 3" in the "Timeline" "block"
87 And I should not see "Test choice 2 closes" in the "Timeline" "block"
88 And I should not see "Test choice 3 closes" in the "Timeline" "block"
89 And I should not see "Test feedback 2 closes" in the "Timeline" "block"
90 And I should not see "Test feedback 3 closes" in the "Timeline" "block"
91 And I should not see "Test assign 1 is due" in the "Timeline" "block"