Inject \OCP\IURLGenerator to make tests work
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
This commit is contained in:
parent
a04feff9a7
commit
2e4cd44556
4 changed files with 16 additions and 5 deletions
|
@ -70,7 +70,7 @@ class TwoFactorChallengeController extends Controller {
|
|||
* @return string
|
||||
*/
|
||||
protected function getLogoutUrl() {
|
||||
return OC_User::getLogoutUrl();
|
||||
return OC_User::getLogoutUrl($this->urlGenerator);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -187,7 +187,7 @@ class NavigationManager implements INavigationManager {
|
|||
'icon' => $this->urlGenerator->imagePath('settings', 'admin.svg'),
|
||||
]);
|
||||
|
||||
$logoutUrl = \OC_User::getLogoutUrl();
|
||||
$logoutUrl = \OC_User::getLogoutUrl($this->urlGenerator);
|
||||
if($logoutUrl !== '') {
|
||||
// Logout
|
||||
$this->add([
|
||||
|
|
|
@ -283,15 +283,16 @@ class OC_User {
|
|||
/**
|
||||
* Returns the current logout URL valid for the currently logged-in user
|
||||
*
|
||||
* @param \OCP\IURLGenerator $urlGenerator
|
||||
* @return string
|
||||
*/
|
||||
public static function getLogoutUrl() {
|
||||
public static function getLogoutUrl(\OCP\IURLGenerator $urlGenerator) {
|
||||
$backend = self::findFirstActiveUsedBackend();
|
||||
if ($backend) {
|
||||
return $backend->getLogoutUrl();
|
||||
}
|
||||
|
||||
$logoutUrl = \OC::$server->getURLGenerator()->linkToRouteAbsolute(
|
||||
$logoutUrl = $urlGenerator->linkToRouteAbsolute(
|
||||
'core.login.logout',
|
||||
[
|
||||
'requesttoken' => \OCP\Util::callRegister(),
|
||||
|
|
|
@ -217,6 +217,16 @@ class NavigationManagerTest extends TestCase {
|
|||
$this->urlGenerator->expects($this->any())->method('linkToRoute')->willReturnCallback(function() {
|
||||
return "/apps/test/";
|
||||
});
|
||||
$this->urlGenerator
|
||||
->expects($this->once())
|
||||
->method('linkToRouteAbsolute')
|
||||
->with(
|
||||
'core.login.logout',
|
||||
[
|
||||
'requesttoken' => \OCP\Util::callRegister(),
|
||||
]
|
||||
)
|
||||
->willReturn('https://example.com/logout');
|
||||
$user = $this->createMock(IUser::class);
|
||||
$user->expects($this->any())->method('getUID')->willReturn('user001');
|
||||
$this->userSession->expects($this->any())->method('getUser')->willReturn($user);
|
||||
|
@ -260,7 +270,7 @@ class NavigationManagerTest extends TestCase {
|
|||
[
|
||||
'id' => 'logout',
|
||||
'order' => 99999,
|
||||
'href' => \OC_User::getLogoutUrl(),
|
||||
'href' => 'https://example.com/logout',
|
||||
'icon' => '/apps/core/img/actions/logout.svg',
|
||||
'name' => 'Log out',
|
||||
'active' => false,
|
||||
|
|
Loading…
Reference in a new issue