116 lines
6.3 KiB
Gherkin
116 lines
6.3 KiB
Gherkin
@enrol @enrol_self
|
|
Feature: A course welcome message will be sent to the user when they auto-enrol themself in a course
|
|
In order to let the user know they have been auto-enrol themself in a course successfully
|
|
As a teacher
|
|
I want the user to receive a welcome message when they auto-enrol themself in a course
|
|
|
|
Background:
|
|
Given the following "users" exist:
|
|
| username | firstname | lastname | email |
|
|
| manager | Manager | User | manager@example.com |
|
|
| teacher | Teacher | User | teacher@example.com |
|
|
| user1 | First | User | first@example.com |
|
|
| user2 | Second | User | second@example.com |
|
|
And the following "courses" exist:
|
|
| fullname | shortname | category |
|
|
| Course 1 | C1 | 0 |
|
|
| Course 2 | C2 | 0 |
|
|
And the following "course enrolments" exist:
|
|
| user | course | role |
|
|
| manager | C1 | manager |
|
|
| teacher | C1 | editingteacher |
|
|
| teacher | C2 | editingteacher |
|
|
And I log in as "admin"
|
|
And I add "Self enrolment" enrolment method in "Course 1" with:
|
|
| Custom instance name | Test student enrolment |
|
|
And I add "Self enrolment" enrolment method in "Course 2" with:
|
|
| Custom instance name | Test student enrolment |
|
|
|
|
@javascript
|
|
Scenario: Manager should see the new settings for course welcome message
|
|
Given I am on the "C1" "Enrolled users" page logged in as manager
|
|
And I set the field "Participants tertiary navigation" to "Enrolment methods"
|
|
When I click on "Edit" "link" in the "Test student enrolment" "table_row"
|
|
Then I should see "Send course welcome message"
|
|
And the field "Send course welcome message" matches value "From the course contact"
|
|
And I should see "Custom welcome message"
|
|
And the field "Custom welcome message" matches value "Dear {$a->fullname}, you have successfully been enrolled to course {$a->coursename}"
|
|
And I should see "Accepted formats: Plain text or Moodle-auto format. HTML tags and multi-lang tags are also accepted, as well as the following placeholders:"
|
|
And I set the field "Send course welcome message" to "No"
|
|
And I should not see "Custom welcome message"
|
|
And I should not see "Accepted formats: Plain text or Moodle-auto format. HTML tags and multi-lang tags are also accepted, as well as the following placeholders:"
|
|
|
|
@javascript
|
|
Scenario: Student should not receive a welcome message if the setting is disabled
|
|
Given I am on the "C1" "Enrolled users" page logged in as manager
|
|
And I set the field "Participants tertiary navigation" to "Enrolment methods"
|
|
And I click on "Edit" "link" in the "Test student enrolment" "table_row"
|
|
And I set the field "Send course welcome message" to "No"
|
|
And I press "Save changes"
|
|
And I log in as "user1"
|
|
And I am on "Course 1" course homepage
|
|
When I press "Enrol me"
|
|
Then I should not see "1" in the "#nav-notification-popover-container [data-region='count-container']" "css_element"
|
|
|
|
@javascript
|
|
Scenario: Students should receive a welcome message if the setting is enabled - Default message
|
|
# Login as first user and check the notification.
|
|
Given I log in as "user1"
|
|
And I am on "Course 1" course homepage
|
|
When I press "Enrol me"
|
|
Then I should see "1" in the "#nav-notification-popover-container [data-region='count-container']" "css_element"
|
|
And I open the notification popover
|
|
And I should see "Welcome to Course 1"
|
|
And I click on "View full notification" "link" in the ".popover-region-notifications" "css_element"
|
|
And I should see "Dear First User, you have successfully been enrolled to course Course 1"
|
|
# Login as second user and check the notification.
|
|
And I log in as "user2"
|
|
And I am on "Course 2" course homepage
|
|
And I press "Enrol me"
|
|
And I should see "1" in the "#nav-notification-popover-container [data-region='count-container']" "css_element"
|
|
And I open the notification popover
|
|
And I should see "Welcome to Course 2"
|
|
And I click on "View full notification" "link" in the ".popover-region-notifications" "css_element"
|
|
And I should see "Dear Second User, you have successfully been enrolled to course Course 2"
|
|
|
|
@javascript
|
|
Scenario: Students should receive a welcome message if the setting is enabled - Custom message
|
|
Given I am on the "C1" "Enrolled users" page logged in as manager
|
|
And I set the field "Participants tertiary navigation" to "Enrolment methods"
|
|
And I click on "Edit" "link" in the "Test student enrolment" "table_row"
|
|
And I set the field "Custom welcome message" to multiline:
|
|
"""
|
|
Dear {$a->fullname}, you have successfully been enrolled to course {$a->coursename}.
|
|
Your email address: {$a->email}
|
|
Your first name: {$a->firstname}
|
|
Your last name: {$a->lastname}
|
|
Your course role: {$a->courserole}
|
|
"""
|
|
And I press "Save changes"
|
|
# Login as first user and check the notification.
|
|
And I log in as "user1"
|
|
And I am on "Course 1" course homepage
|
|
When I press "Enrol me"
|
|
Then I should see "1" in the "#nav-notification-popover-container [data-region='count-container']" "css_element"
|
|
And I open the notification popover
|
|
And I should see "Welcome to Course 1"
|
|
And I click on "View full notification" "link" in the ".popover-region-notifications" "css_element"
|
|
And I should see "Dear First User, you have successfully been enrolled to course Course 1"
|
|
And I should see "Your email address: first@example.com"
|
|
And I should see "Your first name: First"
|
|
And I should see "Your last name: User"
|
|
And I should see "Your course role: student"
|
|
# Login as second user and check the notification.
|
|
And I log in as "user2"
|
|
And I am on "Course 1" course homepage
|
|
And I press "Enrol me"
|
|
And I should see "1" in the "#nav-notification-popover-container [data-region='count-container']" "css_element"
|
|
And I open the notification popover
|
|
And I should see "Welcome to Course 1"
|
|
And I click on "View full notification" "link" in the ".popover-region-notifications" "css_element"
|
|
And I should see "Dear Second User, you have successfully been enrolled to course Course 1"
|
|
And I should see "Your email address: second@example.com"
|
|
And I should see "Your first name: Second"
|
|
And I should see "Your last name: User"
|
|
And I should see "Your course role: student"
|