MDL-39051 behat: New tests
To cover all course controls functionalities with and without Javascript and with and without paged course mode.
This commit is contained in:
@@ -0,0 +1,165 @@
|
||||
@core @core_course
|
||||
Feature: Course activity controls works as expected
|
||||
In order to manage my course's activities
|
||||
As a teacher
|
||||
I need to edit, hide, show and indent activities inside course sections
|
||||
|
||||
# This two scenario outlines contains exactly the same steps, the
|
||||
# only difference is whether JS is enabled or not; we can not use
|
||||
# Background sections when using Scenario Outlines because of Behat
|
||||
# framework restrictions.
|
||||
|
||||
# We are testing:
|
||||
# * Javascript on and off
|
||||
# * Topics and weeks course formats
|
||||
# * Course controls without paged mode
|
||||
# * Course controls with paged mode in the course home page
|
||||
# * Course controls with paged mode in a section's page
|
||||
|
||||
@javascript @_cross_browser
|
||||
Scenario Outline: General activities course controls using topics and weeks formats, and paged mode and not paged mode works as expected
|
||||
Given the following "users" exists:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Teacher | 1 | teacher1@asd.com |
|
||||
And the following "courses" exists:
|
||||
| fullname | shortname | format | coursedisplay | numsections |
|
||||
| Course 1 | C1 | <courseformat> | <coursedisplay> | 5 |
|
||||
And the following "course enrolments" exists:
|
||||
| user | course | role |
|
||||
| teacher1 | C1 | editingteacher |
|
||||
And I log in as "teacher1"
|
||||
And I follow "Course 1"
|
||||
When I follow <targetpage>
|
||||
And I press "Turn editing on"
|
||||
Then I should see "Turn editing off"
|
||||
And I press "Turn editing off"
|
||||
And "Turn editing on" "button" should exists
|
||||
And I follow "Turn editing on"
|
||||
And "Turn editing off" "button" should exists
|
||||
And I follow "Turn editing off"
|
||||
And I should see "Turn editing on"
|
||||
And "Turn editing on" "button" should exists
|
||||
And I turn editing mode on
|
||||
And I click on "Delete Recent activity block" "link"
|
||||
And I press "Yes"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name 1 |
|
||||
| Description | Test forum description 1 |
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name 2 |
|
||||
| Description | Test forum description 2 |
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I indent right "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I indent left "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I click on "Update" "link" in the "Test forum name 1" activity
|
||||
And I should see "Updating Forum"
|
||||
And I should see "Display description on course page"
|
||||
And I press "Save and return to course"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I click on "Hide" "link" in the "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I delete "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I should not see "Test forum name 1" in the ".region-content" "css_element"
|
||||
And I duplicate "Test forum name 2" activity editing the new copy with:
|
||||
| Forum name | Edited test forum name 2 |
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I should see "Test forum name 2"
|
||||
And I should see "Edited test forum name 2"
|
||||
And I hide section "1"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And section "1" should be hidden
|
||||
And I show section "1"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And section "1" should be visible
|
||||
And I add the "Section links" block
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I should see "1 2 3 4 5" in the ".block_section_links" "css_element"
|
||||
And I click on "2" "link" in the ".block_section_links" "css_element"
|
||||
And I <should_see_other_sections_following_block_sections_links> see "Test forum name 2"
|
||||
|
||||
Examples:
|
||||
| courseformat | coursedisplay | targetpage | should_see_other_sections | should_see_other_sections_following_block_sections_links |
|
||||
| topics | 0 | "Course 1" | should | should |
|
||||
| topics | 1 | "Topic 1" | should not | should not |
|
||||
| topics | 1 | "Course 1" | should | should not |
|
||||
| weeks | 0 | "Course 1" | should | should |
|
||||
| weeks | 1 | "1 January - 7 January" | should not | should not |
|
||||
| weeks | 1 | "Course 1" | should | should not |
|
||||
|
||||
|
||||
Scenario Outline: General activities course controls using topics and weeks formats, and paged mode and not paged mode works as expected
|
||||
Given the following "users" exists:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Teacher | 1 | teacher1@asd.com |
|
||||
And the following "courses" exists:
|
||||
| fullname | shortname | format | coursedisplay | numsections |
|
||||
| Course 1 | C1 | <courseformat> | <coursedisplay> | 5 |
|
||||
And the following "course enrolments" exists:
|
||||
| user | course | role |
|
||||
| teacher1 | C1 | editingteacher |
|
||||
And I log in as "teacher1"
|
||||
And I follow "Course 1"
|
||||
When I follow <targetpage>
|
||||
And I press "Turn editing on"
|
||||
Then I should see "Turn editing off"
|
||||
And I press "Turn editing off"
|
||||
And "Turn editing on" "button" should exists
|
||||
And I follow "Turn editing on"
|
||||
And "Turn editing off" "button" should exists
|
||||
And I follow "Turn editing off"
|
||||
And I should see "Turn editing on"
|
||||
And "Turn editing on" "button" should exists
|
||||
And I turn editing mode on
|
||||
And I click on "Delete Recent activity block" "link"
|
||||
And I press "Yes"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name 1 |
|
||||
| Description | Test forum description 1 |
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name 2 |
|
||||
| Description | Test forum description 2 |
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I indent right "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I indent left "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I click on "Update" "link" in the "Test forum name 1" activity
|
||||
And I should see "Updating Forum"
|
||||
And I should see "Display description on course page"
|
||||
And I press "Save and return to course"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I click on "Hide" "link" in the "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I delete "Test forum name 1" activity
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I should not see "Test forum name 1" in the ".region-content" "css_element"
|
||||
And I duplicate "Test forum name 2" activity editing the new copy with:
|
||||
| Forum name | Edited test forum name 2 |
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I should see "Test forum name 2"
|
||||
And I should see "Edited test forum name 2"
|
||||
And I hide section "1"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And section "1" should be hidden
|
||||
And I show section "1"
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And section "1" should be visible
|
||||
And I add the "Section links" block
|
||||
And "#section-2" "css_element" <should_see_other_sections> exists
|
||||
And I should see "1 2 3 4 5" in the ".block_section_links" "css_element"
|
||||
And I click on "2" "link" in the ".block_section_links" "css_element"
|
||||
And I <should_see_other_sections_following_block_sections_links> see "Test forum name 2"
|
||||
|
||||
Examples:
|
||||
| courseformat | coursedisplay | targetpage | should_see_other_sections | should_see_other_sections_following_block_sections_links |
|
||||
| topics | 0 | "Course 1" | should | should |
|
||||
| topics | 1 | "Topic 1" | should not | should not |
|
||||
| topics | 1 | "Course 1" | should | should not |
|
||||
| weeks | 0 | "Course 1" | should | should |
|
||||
| weeks | 1 | "1 January - 7 January" | should not | should not |
|
||||
| weeks | 1 | "Course 1" | should | should not |
|
||||
@@ -0,0 +1,73 @@
|
||||
@core @core_course
|
||||
Feature: Activities can be moved between sections
|
||||
In order to rearrange my course contents
|
||||
As a teacher
|
||||
I need to move activities between sections
|
||||
|
||||
Background:
|
||||
Given the following "users" exists:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Teacher | 1 | teacher1@asd.com |
|
||||
And the following "courses" exists:
|
||||
| fullname | shortname | format | coursedisplay | numsections |
|
||||
| Course 1 | C1 | topics | 0 | 5 |
|
||||
And the following "course enrolments" exists:
|
||||
| user | course | role |
|
||||
| teacher1 | C1 | editingteacher |
|
||||
And I log in as "teacher1"
|
||||
And I follow "Course 1"
|
||||
And I turn editing mode on
|
||||
And I follow "Delete Recent activity block"
|
||||
And I press "Yes"
|
||||
And I follow "Configure Navigation block"
|
||||
And I fill the moodle form with:
|
||||
| Visible | Yes |
|
||||
And I press "Save changes"
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name |
|
||||
| Description | Test forum description |
|
||||
|
||||
@javascript @_cross_browser
|
||||
Scenario: Move activities in a single page course with Javascript enabled
|
||||
When I move "Test forum name" activity to section "2"
|
||||
And I reload the page
|
||||
Then I should see "Test forum name" in the "#section-2" "css_element"
|
||||
And I should not see "Test forum name" in the "#section-1" "css_element"
|
||||
|
||||
@javascript @_cross_browser
|
||||
Scenario: Move activities in the course home with Javascript enabled using paged mode
|
||||
Given I follow "Edit settings"
|
||||
And I fill the moodle form with:
|
||||
| Course layout | Show one section per page |
|
||||
And I press "Save changes"
|
||||
When I move "Test forum name" activity to section "2"
|
||||
# This reload step is added because of drap&drop & yui dd problem
|
||||
And I reload the page
|
||||
Then I should see "Test forum name" in the "#section-2" "css_element"
|
||||
And I should not see "Test forum name" in the "#section-1" "css_element"
|
||||
|
||||
Scenario: Move activities in a single page course with Javascript disabled
|
||||
When I move "Test forum name" activity to section "2"
|
||||
Then I should see "Test forum name" in the "#section-2" "css_element"
|
||||
And I should not see "Test forum name" in the "#section-1" "css_element"
|
||||
|
||||
Scenario: Move activities in the course home with Javascript disabled using paged mode
|
||||
Given I follow "Edit settings"
|
||||
And I fill the moodle form with:
|
||||
| Course layout | Show one section per page |
|
||||
And I press "Save changes"
|
||||
When I move "Test forum name" activity to section "2"
|
||||
Then I should see "Test forum name" in the "#section-2" "css_element"
|
||||
And I should not see "Test forum name" in the "#section-1" "css_element"
|
||||
|
||||
Scenario: Move activities in a course section with Javascript disabled using paged mode
|
||||
Given I follow "Edit settings"
|
||||
And I fill the moodle form with:
|
||||
| Course layout | Show one section per page |
|
||||
And I press "Save changes"
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Second forum name |
|
||||
| Description | Second forum description |
|
||||
And I follow "Topic 1"
|
||||
When I move "Second forum name" activity to section "1"
|
||||
Then "Second forum name" "link" should appear before "Test forum name" "link"
|
||||
@@ -0,0 +1,55 @@
|
||||
@core @core_course
|
||||
Feature: Sections can be moved
|
||||
In order to rearrange my course contents
|
||||
As a teacher
|
||||
I need to move sections up and down
|
||||
|
||||
Background:
|
||||
Given the following "users" exists:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Teacher | 1 | teacher1@asd.com |
|
||||
And the following "courses" exists:
|
||||
| fullname | shortname | format | coursedisplay | numsections |
|
||||
| Course 1 | C1 | topics | 0 | 5 |
|
||||
And the following "course enrolments" exists:
|
||||
| user | course | role |
|
||||
| teacher1 | C1 | editingteacher |
|
||||
And I log in as "teacher1"
|
||||
And I follow "Course 1"
|
||||
And I turn editing mode on
|
||||
|
||||
Scenario: Move up and down a section with Javascript disabled in a single page course
|
||||
Given I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name |
|
||||
| Description | Test forum description |
|
||||
When I move down section "1"
|
||||
Then I should see "Test forum name" in the "#section-2" "css_element"
|
||||
And I move up section "2"
|
||||
And I should see "Test forum name" in the "#section-1" "css_element"
|
||||
|
||||
Scenario: Move up and down a section with Javascript disabled in the course home of a course using paged mode
|
||||
Given I follow "Edit settings"
|
||||
And I fill the moodle form with:
|
||||
| Course layout | Show one section per page |
|
||||
And I press "Save changes"
|
||||
And I add a "Forum" to section "1" and I fill the form with:
|
||||
| Forum name | Test forum name |
|
||||
| Description | Test forum description |
|
||||
When I move down section "1"
|
||||
Then I should see "Test forum name" in the "#section-2" "css_element"
|
||||
And I move up section "2"
|
||||
And I should see "Test forum name" in the "#section-1" "css_element"
|
||||
|
||||
Scenario: Sections can not be moved with Javascript disabled in a section page of a course using paged mode
|
||||
Given I follow "Edit settings"
|
||||
And I fill the moodle form with:
|
||||
| Course layout | Show one section per page |
|
||||
And I press "Save changes"
|
||||
And I add a "Forum" to section "2" and I fill the form with:
|
||||
| Forum name | Test forum name |
|
||||
| Description | Test forum description |
|
||||
When I follow "Topic 2"
|
||||
Then "#section-1" "css_element" should not exists
|
||||
And "#section-3" "css_element" should not exists
|
||||
And "Move down" "link" should not exists
|
||||
And "Move up" "link" should not exists
|
||||
@@ -5,14 +5,14 @@ Feature: Topic's course sections highlighting
|
||||
I need to highlight one specific section
|
||||
|
||||
@javascript
|
||||
Scenario: Highlight a topic's course section
|
||||
Scenario Outline: Highlight a topic's course section with course paged mode and without it
|
||||
Given the following "users" exists:
|
||||
| username | firstname | lastname | email |
|
||||
| teacher1 | Teacher | 1 | teacher1@asd.com |
|
||||
| student1 | Student | 1 | student1@asd.com |
|
||||
And the following "courses" exists:
|
||||
| fullname | shortname | format |
|
||||
| Course 1 | C1 | topics |
|
||||
| fullname | shortname | format | coursedisplay |
|
||||
| Course 1 | C1 | topics | <coursedisplay> |
|
||||
And the following "course enrolments" exists:
|
||||
| user | course | role |
|
||||
| teacher1 | C1 | editingteacher |
|
||||
@@ -41,3 +41,8 @@ Feature: Topic's course sections highlighting
|
||||
And I follow "Course 1"
|
||||
And section "1" should not be highlighted
|
||||
And section "2" should not be highlighted
|
||||
|
||||
Examples:
|
||||
| coursedisplay |
|
||||
| 0 |
|
||||
| 1 |
|
||||
|
||||
Reference in New Issue
Block a user