mirror of
https://github.com/moodle/moodle.git
synced 2025-02-25 20:43:33 +01:00
The behat tests using the course format topics have been reviewed to: - Add the 'inisections' parameter where necessary, facilitating automatic renaming of section names. - Evaluate failing tests due to slight changes in ordering. Notably, in the topics format, sections are now uniformly named 'New section' without any numbering.
107 lines
4.9 KiB
Gherkin
107 lines
4.9 KiB
Gherkin
@core @core_course @_cross_browser
|
|
Feature: Show/hide course sections
|
|
In order to delay sections availability
|
|
As a teacher
|
|
I need to show or hide sections
|
|
|
|
Background:
|
|
Given the following "users" exist:
|
|
| username | firstname | lastname | email |
|
|
| teacher1 | Teacher | 1 | teacher1@example.com |
|
|
| student1 | Student | 1 | student1@example.com |
|
|
And the following "course" exists:
|
|
| fullname | Course 1 |
|
|
| shortname | C1 |
|
|
| format | topics |
|
|
| hiddensections | 0 |
|
|
| enablecompletion | 1 |
|
|
| coursedisplay | 1 |
|
|
| initsections | 1 |
|
|
And the following "course enrolments" exist:
|
|
| user | course | role |
|
|
| teacher1 | C1 | editingteacher |
|
|
| student1 | C1 | student |
|
|
And the following "activities" exist:
|
|
| activity | course | section | name | visible |
|
|
| forum | C1 | 1 | Test hidden forum 11 name | 0 |
|
|
| forum | C1 | 1 | Test hidden forum 12 name | 1 |
|
|
| forum | C1 | 2 | Test hidden forum 21 name | 0 |
|
|
| forum | C1 | 2 | Test hidden forum 22 name | 1 |
|
|
| forum | C1 | 3 | Test hidden forum 31 name | 0 |
|
|
| forum | C1 | 3 | Test hidden forum 32 name | 1 |
|
|
And I log in as "teacher1"
|
|
And I am on "Course 1" course homepage with editing mode on
|
|
|
|
@javascript
|
|
Scenario: Show / hide section icon functions correctly
|
|
When I hide section "1"
|
|
Then section "1" should be hidden
|
|
And section "2" should be visible
|
|
And section "3" should be visible
|
|
And I hide section "2"
|
|
And section "2" should be hidden
|
|
And I show section "2"
|
|
And section "2" should be visible
|
|
And I hide section "3"
|
|
And I show section "3"
|
|
And I hide section "3"
|
|
And section "3" should be hidden
|
|
And I reload the page
|
|
And section "1" should be hidden
|
|
And all activities in section "1" should be hidden
|
|
And section "2" should be visible
|
|
And section "3" should be hidden
|
|
And all activities in section "1" should be hidden
|
|
And I am on the "Course 1" course page logged in as student1
|
|
And section "1" should be hidden
|
|
And all activities in section "1" should be hidden
|
|
And section "2" should be visible
|
|
And section "3" should be hidden
|
|
And all activities in section "1" should be hidden
|
|
|
|
@javascript
|
|
Scenario: Students can not navigate to hidden sections
|
|
Given I hide section "2"
|
|
And I navigate to "Settings" in current page administration
|
|
And I set the following fields to these values:
|
|
| Course layout | Show one section per page |
|
|
And I press "Save and display"
|
|
When I click on "Section 1" "link" in the "region-main" "region"
|
|
Then I should see "Section 2" in the "region-main" "region"
|
|
And I click on "Section 2" "link" in the "region-main" "region"
|
|
And I should see "Section 1" in the "region-main" "region"
|
|
And I should see "Section 3" in the "region-main" "region"
|
|
And I am on the "Course 1" course page logged in as student1
|
|
And I click on "Section 1" "link" in the "region-main" "region"
|
|
And I should not see "Section 2" in the "region-main" "region"
|
|
And I should see "Section 3" in the "region-main" "region"
|
|
And I click on "Section 3" "link" in the "region-main" "region"
|
|
And I should not see "Section 2" in the "region-main" "region"
|
|
And I should see "Section 1" in the "region-main" "region"
|
|
|
|
@javascript
|
|
Scenario: Students can not navigate to restricted sections
|
|
Given the following "activities" exist:
|
|
| activity | course | section | name | completion |
|
|
| label | C1 | 1 | Test label | 1 |
|
|
And I edit the section "2"
|
|
And I expand all fieldsets
|
|
And I click on "Add restriction..." "button"
|
|
And I click on "Activity completion" "button" in the "Add restriction..." "dialogue"
|
|
And I set the following fields to these values:
|
|
| cm | Test label |
|
|
| Required completion status | must be marked complete |
|
|
And I press "Save changes"
|
|
When I click on "Section 1" "link" in the "region-main" "region"
|
|
Then I should see "Section 2" in the "region-main" "region"
|
|
And I click on "Section 2" "link" in the "region-main" "region"
|
|
And I should see "Section 1" in the "region-main" "region"
|
|
And I should see "Section 3" in the "region-main" "region"
|
|
And I am on the "Course 1" course page logged in as student1
|
|
And I click on "Section 1" "link" in the "region-main" "region"
|
|
And I should not see "Section 2" in the "region-main" "region"
|
|
And I should see "Section 3" in the "region-main" "region"
|
|
And I click on "Section 3" "link" in the "region-main" "region"
|
|
And I should not see "Section 2" in the "region-main" "region"
|
|
And I should see "Section 1" in the "region-main" "region"
|