19declare(strict_types=1);
28use ILIAS\LegalDocuments\test\ContainerMock;
29use PHPUnit\Framework\TestCase;
34require_once __DIR__ .
'/bootstrap.php';
42 $this->assertInstanceOf(Consumer::class,
new Consumer($this->mock(Container::class)));
52 $by_trying = $this->mockTree(ByTrying::class, [
'transform' =>
false]);
53 $settings = $this->mockMethod(ilSetting::class,
'get', [
'dpro_enabled',
''],
'false');
55 $container = $this->mockTree(Container::class, [
56 'settings' => $settings,
57 'refinery' => [
'byTrying' => $by_trying],
59 $container->method(
'offsetGet')->with(
'ilObjDataCache')->willReturn($this->mock(ilObjectDataCache::class));
61 $slot = $this->mock(UseSlot::class);
62 $slot->expects(self::once())->method(
'hasDocuments')->willReturn($slot);
63 $slot->expects(self::once())->method(
'hasHistory')->willReturn($slot);
64 $slot->expects(self::once())->method(
'hasPublicApi')->willReturn($slot);
65 $slot->expects(self::once())->method(
'hasPublicPage')->willReturn($slot);
66 $slot->expects(self::once())->method(
'showInFooter')->willReturn($slot);
70 $this->assertSame($slot, $instance->uses($slot, $this->mock(LazyProvide::class)));
75 $by_trying = $this->mockTree(ByTrying::class, [
'transform' =>
true]);
76 $settings = $this->mock(ilSetting::class);
77 $consecutive = [
'dpro_enabled',
'dpro_no_acceptance'];
78 $settings->method(
'get')->with(
79 $this->callback(
function ($value) use (&$consecutive) {
80 $this->assertSame(array_shift($consecutive), $value);
83 $this->identicalTo(
'')
84 )->willReturn(
'true');
86 $container = $this->mockTree(Container::class, [
87 'settings' => $settings,
88 'refinery' => [
'byTrying' => $by_trying],
89 'ctrl' => $this->mock(ilCtrl::class),
91 $container->method(
'offsetGet')->with(
'ilObjDataCache')->willReturn($this->mock(ilObjectDataCache::class));
93 $slot = $this->mock(UseSlot::class);
94 $slot->expects(self::once())->method(
'hasDocuments')->willReturn($slot);
95 $slot->expects(self::once())->method(
'hasHistory')->willReturn($slot);
96 $slot->expects(self::once())->method(
'showOnLoginPage')->willReturn($slot);
97 $slot->expects(self::once())->method(
'showInFooter')->willReturn($slot);
98 $slot->expects(self::once())->method(
'hasPublicPage')->willReturn($slot);
99 $slot->expects(self::once())->method(
'hasPublicApi')->willReturn($slot);
103 $this->assertSame($slot, $instance->uses($slot, $this->mock(LazyProvide::class)));
108 $by_trying = $this->mock(ByTrying::class);
109 $by_trying->method(
'transform')->willReturnOnConsecutiveCalls(
true,
false);
111 $settings = $this->mock(ilSetting::class);
112 $consecutive = [
'dpro_enabled',
'dpro_no_acceptance'];
113 $settings->method(
'get')->with(
114 $this->callback(
function ($value) use (&$consecutive) {
115 $this->assertSame(array_shift($consecutive), $value);
118 $this->identicalTo(
'')
119 )->willReturnOnConsecutiveCalls(
'true',
'false');
121 $container = $this->mockTree(Container::class, [
122 'settings' => $settings,
123 'refinery' => [
'byTrying' => $by_trying],
124 'ctrl' => $this->mock(ilCtrl::class),
126 $container->method(
'offsetGet')->with(
'ilObjDataCache')->willReturn($this->mock(ilObjectDataCache::class));
128 $slot = $this->mock(UseSlot::class);
129 $slot->expects(self::once())->method(
'hasDocuments')->willReturn($slot);
130 $slot->expects(self::once())->method(
'hasHistory')->willReturn($slot);
131 $slot->expects(self::once())->method(
'showOnLoginPage')->willReturn($slot);
132 $slot->expects(self::once())->method(
'canWithdraw')->willReturn($slot);
133 $slot->expects(self::once())->method(
'hasAgreement')->willReturn($slot);
134 $slot->expects(self::once())->method(
'showInFooter')->willReturn($slot);
135 $slot->expects(self::once())->method(
'onSelfRegistration')->willReturn($slot);
136 $slot->expects(self::once())->method(
'hasOnlineStatusFilter')->willReturn($slot);
137 $slot->expects(self::once())->method(
'hasUserManagementFields')->willReturn($slot);
138 $slot->expects(self::once())->method(
'hasPublicApi')->willReturn($slot);
139 $slot->expects(self::once())->method(
'canReadInternalMails')->willReturn($slot);
140 $slot->expects(self::once())->method(
'canUseSoapApi')->willReturn($slot);
144 $this->assertSame($slot, $instance->uses($slot, $this->mock(LazyProvide::class)));
Customizing of pimple-DIC for ILIAS.
testUsesWithoutAcceptance()
Class ilCtrl provides processing control methods.