first commit

This commit is contained in:
CHIEFSOFT\ameye
2024-09-30 18:11:26 -04:00
commit e592ca6823
27270 changed files with 5002257 additions and 0 deletions
@@ -0,0 +1,66 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Behat message popup related steps definitions.
*
* @package message_popup
* @category test
* @copyright 2016 Ryan Wyllie <ryan@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
// NOTE: no MOODLE_INTERNAL test here, this file may be required by behat before including /config.php.
require_once(__DIR__ . '/../../../../../lib/behat/behat_base.php');
/**
* Message popup steps definitions.
*
* @package message_popup
* @category test
* @copyright 2016 Ryan Wyllie <ryan@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class behat_message_popup extends behat_base {
/**
* Open the notification popover in the nav bar.
*
* @Given /^I open the notification popover$/
*/
public function i_open_the_notification_popover() {
$this->execute('behat_general::i_click_on',
array("#nav-notification-popover-container [data-region='popover-region-toggle']", 'css_element'));
$node = $this->get_selected_node('css_element',
'#nav-notification-popover-container [data-region="popover-region-content"]');
$this->ensure_node_is_visible($node);
}
/**
* Open the message popover in the nav bar.
*
* @Given /^I open the message popover$/
*/
public function i_open_the_message_popover() {
$this->execute('behat_general::i_click_on',
array("#nav-message-popover-container [data-region='popover-region-toggle']", 'css_element'));
$node = $this->get_selected_node('css_element', '#nav-message-popover-container [data-region="popover-region-content"]');
$this->ensure_node_is_visible($node);
}
}
@@ -0,0 +1,17 @@
@core_message @message_popup
Feature: Notification popover preferences
In order to modify my notification preferences
As a user
I can navigate to the preferences page from the popover
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| user1 | User | 1 | user1@example.com |
@javascript
Scenario: User navigates to preferences page
Given I log in as "user1"
And I open the notification popover
When I follow "Notification preferences"
Then I should see "Notification preferences"
@@ -0,0 +1,47 @@
@core_message @message_popup @javascript
Feature: Notification popover unread notifications
In order to be kept informed
As a user
I am notified about relevant events in Moodle
Background:
Given the following "users" exist:
| username | firstname | lastname | email |
| student1 | Student | 1 | student1@example.com |
| student2 | Student | 2 | student2@example.com |
# This should generate some notifications
And the following "notifications" exist:
| subject | userfrom | userto | timecreated | timeread |
| Test 01 | student2 | student1 | 1654587996 | null |
| Test 02 | student2 | student1 | 1654587997 | null |
Scenario: Notification popover shows correct unread count
Given I log in as "student1"
# Confirm the popover is saying 1 unread notifications.
And I should see "2" in the "#nav-notification-popover-container [data-region='count-container']" "css_element"
# Open the popover.
When I open the notification popover
# Confirm the notifications are visible.
Then I should see "Test 01" in the "#nav-notification-popover-container" "css_element"
And I should see "Test 02" in the "#nav-notification-popover-container" "css_element"
@_bug_phantomjs
Scenario: Clicking a notification marks it as read
Given I log in as "student1"
# Open the notifications.
When I open the notification popover
And I follow "Test 01"
And I open the notification popover
And I follow "Test 02"
# Confirm the count element is hidden (i.e. there are no unread notifications).
Then "[data-region='count-container']" "css_element" in the "#nav-notification-popover-container" "css_element" should not be visible
Scenario: Mark all notifications as read
Given I log in as "student1"
When I open the notification popover
And I click on "Mark all as read" "link" in the "#nav-notification-popover-container" "css_element"
# Refresh the page to make sure we send a new request for the unread count.
And I reload the page
# Confirm the count element is hidden (i.e. there are no unread notifications).
Then "[data-region='count-container']" "css_element" in the "#nav-notification-popover-container" "css_element" should not be visible