forked from moodle/moodle
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
MDL-74643 core_user: New admin setting for site support availability
This allows admins to configure whether contact site support is available to everyone, authenticated users, or nobody. The behat testing checks linked and direct access for each setting, as well as adding testing that the support page override works as expected.
- Loading branch information
1 parent
ddc9a30
commit e3b3ba9
Showing
9 changed files
with
175 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
@core @core_user | ||
Feature: Contact site support method and availability can be customised | ||
In order to effectively support people using my Moodle site | ||
As an admin | ||
I need to be able to configure the site support method and who has access to it | ||
|
||
Background: | ||
Given the following "users" exist: | ||
| username | firstname | lastname | email | | ||
| user1 | User | One | user1@example.com | | ||
|
||
Scenario: Contact site support can be made available to all site visitors | ||
Given the following config values are set as admin: | ||
| supportavailability | 2 | | ||
# Confirm unauthenticated visitor has access to the contact form. | ||
When I am on site homepage | ||
Then I should see "Contact site support" in the "page-footer" "region" | ||
And I click on "Contact site support" "link" in the "page-footer" "region" | ||
And I should see "Contact site support" in the "page-header" "region" | ||
# Confirm someone logged in as guest has access to the contact form. | ||
And I log in as "guest" | ||
And I should see "Contact site support" in the "page-footer" "region" | ||
And I click on "Contact site support" "link" in the "page-footer" "region" | ||
And I should see "Contact site support" in the "page-header" "region" | ||
And I log out | ||
# Confirm logged in user has access to the contact form. | ||
And I log in as "user1" | ||
And I should see "Contact site support" in the "page-footer" "region" | ||
And I click on "Contact site support" "link" in the "page-footer" "region" | ||
And I should see "Contact site support" in the "page-header" "region" | ||
|
||
Scenario: Contact site support can be limited to authenticated users | ||
Given the following config values are set as admin: | ||
| supportavailability | 1 | | ||
# Confirm unauthenticated visitor cannot see the option or directly access the page. | ||
When I am on site homepage | ||
Then I should not see "Contact site support" in the "page-footer" "region" | ||
And I am on the "user > Contact Site Support" page | ||
And I should see "Acceptance test site" in the "page-header" "region" | ||
And I should not see "Contact site support" in the "page-header" "region" | ||
# Confirm someone logged in as guest cannot see the option or directly access the page. | ||
And I log in as "guest" | ||
And I should not see "Contact site support" in the "page-footer" "region" | ||
And I am on the "user > Contact Site Support" page | ||
And I should see "Acceptance test site" in the "page-header" "region" | ||
And I should not see "Contact site support" in the "page-header" "region" | ||
And I log out | ||
# Confirm logged in user has access to the contact form. | ||
And I log in as "user1" | ||
And I should see "Contact site support" in the "page-footer" "region" | ||
And I click on "Contact site support" "link" in the "page-footer" "region" | ||
And I should see "Contact site support" in the "page-header" "region" | ||
|
||
Scenario: Contact site support can be disabled | ||
Given the following config values are set as admin: | ||
| supportavailability | 0 | | ||
| defaulthomepage | home | | ||
# Confirm unauthenticated visitor cannot see the option. | ||
When I am on site homepage | ||
Then I should not see "Contact site support" in the "page-footer" "region" | ||
# Confirm someone logged in as guest cannot see the option. | ||
And I log in as "guest" | ||
And I should not see "Contact site support" in the "page-footer" "region" | ||
And I log out | ||
# Confirm logged in user cannot see the option. | ||
And I log in as "user1" | ||
And I should not see "Contact site support" in the "page-footer" "region" | ||
And I log out | ||
# Confirm admin cannot see the option. | ||
And I log in as "admin" | ||
And I should not see "Contact site support" in the "page-footer" "region" | ||
# Confirm visiting the contact form directly without permission redirects to the homepage. | ||
And I am on the "user > Contact Site Support" page | ||
And I should see "Acceptance test site" in the "page-header" "region" | ||
And I should not see "Contact site support" in the "page-header" "region" | ||
|
||
@javascript | ||
Scenario: Contact site support link opens a custom support page URL if set | ||
Given the following config values are set as admin: | ||
| supportavailability | 1 | | ||
| supportpage | user/profile.php | | ||
When I log in as "user1" | ||
And I am on site homepage | ||
And I click on "Contact site support" "link" in the "page-footer" "region" | ||
And I switch to the browser tab opened by the app | ||
Then I should see "User One" in the "page-header" "region" | ||
And I should not see "Contact site support" in the "page-header" "region" | ||
And I close the browser tab opened by the app | ||
|
||
Scenario: Visiting the contact site support page directly will redirect to the custom support page if set | ||
Given the following config values are set as admin: | ||
| supportavailability | 2 | | ||
| supportpage | profile.php | | ||
When I log in as "user1" | ||
And I am on the "user > Contact Site Support" page | ||
Then I should see "User One" in the "page-header" "region" | ||
And I should not see "Contact site support" in the "page-header" "region" | ||
|
||
Scenario: Visiting the contact site support page still redirects to homepage if access to support is disabled | ||
Given the following config values are set as admin: | ||
| supportavailability | 0 | | ||
| supportpage | profile.php | | ||
| defaulthomepage | home | | ||
When I log in as "user1" | ||
And I am on the "user > Contact Site Support" page | ||
Then I should see "Acceptance test site" in the "page-header" "region" | ||
And I should not see "Contact site support" in the "page-header" "region" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters