19 declare(strict_types=1);
30 require_once __DIR__ .
'/../ContainerMock.php';
38 $this->assertInstanceOf(Routing::class,
new Routing(
39 $this->mock(ilCtrl::class),
40 $this->mock(SelectSetting::class),
48 $ctrl = $this->mock(ilCtrl::class);
49 $this->assertSame($ctrl, (
new Routing($ctrl, $this->mock(SelectSetting::class), $this->fail(...), $this->fail(...)))->
ctrl());
54 $this->assertSame(
'dummy logout url', (
new Routing(
55 $this->mock(ilCtrl::class),
56 $this->mock(SelectSetting::class),
58 fn() =>
'dummy logout url' 66 $session = $this->mock(SelectSetting::class);
67 $session->expects(self::once())->method(
'typed')->willReturnCallback(
function (
string $key, callable $proc) {
68 $this->assertSame(
'orig_request_target', $key);
69 return $this->mockTree(Setting::class, [
'value' =>
null]);
73 $this->mock(ilCtrl::class),
75 static function () use (&$called):
void {
79 ))->redirectToOriginalTarget();
81 $this->assertTrue($called);
86 $setting = $this->mock(Setting::class);
87 $setting->method(
'value')->willReturn(
'some url');
88 $setting->expects(self::once())->method(
'update')->with(
null);
90 $session = $this->mock(SelectSetting::class);
91 $session->method(
'typed')->willReturnCallback(
function (
string $key, callable $proc) use (
$setting) {
92 $this->assertSame(
'orig_request_target', $key);
97 $ctrl = $this->mock(ilCtrl::class);
98 $ctrl->expects(self::once())->method(
'redirectToURL')->with(
'some url');
105 ))->redirectToOriginalTarget();
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null