MDL-49412 report_usersessions: Fix behat failures
Part of MDL-45774.
This commit is contained in:
committed by
Adrian Greeve
parent
686e1251e5
commit
e81fef5d54
@@ -50,3 +50,34 @@ function report_usersessions_extend_navigation_user($navigation, $user, $course)
|
||||
new moodle_url('/report/usersessions/user.php'), $navigation::TYPE_SETTING);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Add nodes to myprofile page.
|
||||
*
|
||||
* @param \core_user\output\myprofile\tree $tree Tree object
|
||||
* @param stdClass $user user object
|
||||
* @param bool $iscurrentuser
|
||||
* @param stdClass $course Course object
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
function report_usersessions_myprofile_navigation(core_user\output\myprofile\tree $tree, $user, $iscurrentuser, $course) {
|
||||
global $USER;
|
||||
|
||||
if (isguestuser() or !isloggedin()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (\core\session\manager::is_loggedinas() or $USER->id != $user->id) {
|
||||
// No peeking at somebody else's sessions!
|
||||
return;
|
||||
}
|
||||
|
||||
$context = context_user::instance($USER->id);
|
||||
if (has_capability('report/usersessions:manageownsessions', $context)) {
|
||||
$node = new core_user\output\myprofile\node('reports', 'usersessions',
|
||||
get_string('navigationlink', 'report_usersessions'), null, new moodle_url('/report/usersessions/user.php'));
|
||||
$tree->add_node($node);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -4,7 +4,9 @@ Feature: In a report, admin can see current sessions
|
||||
As a admin
|
||||
I need to view usersessions report and see if the current session is listed
|
||||
|
||||
@javascript
|
||||
Scenario: Check usersessions report shows current session
|
||||
Given I log in as "admin"
|
||||
When I navigate to "Browser sessions" node in "My profile settings > Activity reports"
|
||||
And I follow "My profile" in the user menu
|
||||
When I follow "Browser sessions"
|
||||
Then I should see "Current session"
|
||||
|
||||
Reference in New Issue
Block a user