19 declare(strict_types=1);
42 $container = $this->getMockBuilder(Container::class)->disableOriginalConstructor()->getMock();
44 $this->assertInstanceOf(BadgeParent::class, $parent);
49 $rendered =
'Rendered components';
51 $access = $this->getMockBuilder(ilAccess::class)->disableOriginalConstructor()->getMock();
52 $badge = $this->getMockBuilder(ilBadge::class)->disableOriginalConstructor()->getMock();
53 $container = $this->getMockBuilder(Container::class)->disableOriginalConstructor()->getMock();
54 $descriptive = $this->getMockBuilder(Descriptive::class)->getMock();
55 $factory = $this->getMockBuilder(UI::class)->disableOriginalConstructor()->getMock();
56 $language = $this->getMockBuilder(ilLanguage::class)->disableOriginalConstructor()->getMock();
57 $legacy = $this->getMockBuilder(Legacy::class)->disableOriginalConstructor()->getMock();
58 $link = $this->getMockBuilder(Link::class)->disableOriginalConstructor()->getMock();
59 $listing = $this->getMockBuilder(Listing::class)->disableOriginalConstructor()->getMock();
60 $renderer = $this->getMockBuilder(Renderer::class)->disableOriginalConstructor()->getMock();
61 $standard_link = $this->getMockBuilder(StandardLink::class)->disableOriginalConstructor()->getMock();
62 $ui = $this->getMockBuilder(UIServices::class)->disableOriginalConstructor()->getMock();
64 $language->method(
'txt')->willReturnCallback(
static fn(
string $name):
string => $name .
' translated');
66 $listing->expects(self::once())->method(
'descriptive')->with([
67 'object translated' => $legacy,
68 ])->willReturn($descriptive);
70 $link->method(
'standard')->with(
'Lorem',
'Some URL.')->willReturn($standard_link);
72 $factory->method(
'listing')->willReturn($listing);
73 $factory->method(
'link')->willReturn($link);
74 $factory->expects(self::once())->method(
'legacy')->with($rendered)->willReturn($legacy);
76 $renderer->expects(self::once())->method(
'render')->willReturn($rendered);
78 $ui->method(
'factory')->willReturn($factory);
79 $ui->method(
'renderer')->willReturn($renderer);
81 $access->expects(self::once())->method(
'checkAccess')->with(
'read',
'', 89)->willReturn(
true);
84 $container->method(
'language')->willReturn($language);
85 $container->method(
'access')->willReturn($access);
88 $badge->method(
'getParentId')->willReturn($parent_id);
89 $badge->method(
'getParentMeta')->willReturn([
95 $icon =
function (
int $id,
string $size,
string $type):
string {
96 $this->assertSame([6879,
'big',
'crs'], [$id, $size, $type]);
97 return 'Some image path.';
100 $references_of =
static fn(): array => [89];
102 $link_to =
function (
int $ref_id):
string {
103 $this->assertSame(89,
$ref_id);
108 $this->assertSame($descriptive, $parent->asComponent($badge));
113 $rendered =
'Rendered components';
115 $access = $this->getMockBuilder(ilAccess::class)->disableOriginalConstructor()->getMock();
116 $badge = $this->getMockBuilder(ilBadge::class)->disableOriginalConstructor()->getMock();
117 $container = $this->getMockBuilder(Container::class)->disableOriginalConstructor()->getMock();
118 $descriptive = $this->getMockBuilder(Descriptive::class)->getMock();
119 $factory = $this->getMockBuilder(UI::class)->disableOriginalConstructor()->getMock();
120 $language = $this->getMockBuilder(ilLanguage::class)->disableOriginalConstructor()->getMock();
121 $legacy = $this->getMockBuilder(Legacy::class)->disableOriginalConstructor()->getMock();
122 $listing = $this->getMockBuilder(Listing::class)->disableOriginalConstructor()->getMock();
123 $parent_link = $this->getMockBuilder(Legacy::class)->disableOriginalConstructor()->getMock();
124 $renderer = $this->getMockBuilder(Renderer::class)->disableOriginalConstructor()->getMock();
125 $ui = $this->getMockBuilder(UIServices::class)->disableOriginalConstructor()->getMock();
127 $language->method(
'txt')->willReturnCallback(
static fn(
string $name):
string => $name .
' translated');
129 $listing->expects(self::once())->method(
'descriptive')->with([
130 'object translated' => $legacy,
131 ])->willReturn($descriptive);
133 $factory->method(
'listing')->willReturn($listing);
134 $factory->method(
'legacy')->withConsecutive([
'Lorem'], [$rendered])->willReturnOnConsecutiveCalls($parent_link, $legacy);
136 $renderer->expects(self::once())->method(
'render')->willReturn($rendered);
138 $ui->method(
'factory')->willReturn($factory);
139 $ui->method(
'renderer')->willReturn($renderer);
141 $access->expects(self::once())->method(
'checkAccess')->with(
'read',
'', 89)->willReturn(
false);
144 $container->method(
'language')->willReturn($language);
145 $container->method(
'access')->willReturn($access);
148 $badge->method(
'getParentId')->willReturn($parent_id);
149 $badge->method(
'getParentMeta')->willReturn([
155 $icon =
function (
int $id,
string $size,
string $type):
string {
156 $this->assertSame([6879,
'big',
'crs'], [$id, $size, $type]);
157 return 'Some image path.';
160 $references_of =
static fn(): array => [89];
162 $link_to =
function (
int $ref_id):
string {
163 $this->assertSame(89,
$ref_id);
168 $this->assertSame($descriptive, $parent->asComponent($badge));
This is how a factory for listings looks like.
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
testShowWithoutParentReadRight()
testShowWithParentReadRight()