19 declare(strict_types=1);
37 protected function setUp(): void
39 $this->parent_gui = $this->createMock(ilObjComponentSettingsGUI::class);
40 $this->
ctrl = $this->createMock(ilCtrl::class);
41 $this->
ui = $this->createMock(Factory::class);
42 $this->
renderer = $this->createMock(Renderer::class);
43 $this->
lng = $this->createMock(ilLanguage::class);
44 $this->
lng->method(
"txt")
45 ->willReturnCallback(fn(
$id) =>
$id);
51 $this->assertInstanceOf(ilPluginsOverviewTable::class, $obj);
64 #[\PHPUnit\Framework\Attributes\DataProvider('getImportantFieldData')] 68 public function getImportantFields(
ilPluginInfo $plugin_info): array
70 return parent::getImportantFields($plugin_info);
74 $plugin_info = $this->createMock(ilPluginInfo::class);
76 ->expects($this->once())
77 ->method(
"isInstalled")
78 ->willReturn($installed)
81 ->expects($this->once())
86 $result1 =
"not_installed";
88 $result1 =
"installed";
91 $result2 =
"inactive";
93 $result2 =
"cmps_active";
96 $result = $obj->getImportantFields($plugin_info);
98 $this->assertEquals($result1, $result[0]);
99 $this->assertEquals($result2, $result[1]);
111 $plugin_info = $this->createMock(ilPluginInfo::class);
113 ->expects($this->once())
114 ->method(
"isInstalled")
118 ->expects($this->once())
123 ->expects($this->once())
124 ->method(
"isUpdateRequired")
128 $result = $obj->getContent($plugin_info);
130 $this->assertIsArray($result);
136 public function boolToString(
bool $value):
string 138 return parent::boolToString($value);
142 $result = $obj->boolToString(
true);
143 $this->assertEquals(
"yes", $result);
145 $result = $obj->boolToString(
false);
146 $this->assertEquals(
"no", $result);
152 public function setFilter(array $filter):
void 157 public function filterData(array
$data): array
159 return parent::filterData($data);
163 $plugin_slot = $this->createMock(ilPluginSlotInfo::class);
166 ->willReturn(
"Repository")
169 $component = $this->createMock(ilComponentInfo::class);
171 ->method(
"getQualifiedName")
172 ->willReturn(
"QualifiedName")
175 $plugin_info = $this->createMock(ilPluginInfo::class);
178 ->willReturn(
"TestRepo")
189 ->method(
"getPluginSlot")
190 ->willReturn($plugin_slot)
193 ->method(
"getComponent")
194 ->willReturn($component)
197 $obj->setFilter([
"plugin_name" =>
"TestRepo"]);
198 $result = $obj->filterData([$plugin_info]);
199 $this->assertEquals($plugin_info, $result[0]);
201 $obj->setFilter([
"plugin_name" =>
"TestRepoFAIL"]);
202 $result = $obj->filterData([$plugin_info]);
203 $this->assertCount(0, $result);
205 $obj->setFilter([
"plugin_id" =>
"xvw"]);
206 $result = $obj->filterData([$plugin_info]);
207 $this->assertEquals($plugin_info, $result[0]);
209 $obj->setFilter([
"plugin_id" =>
"xvwFAIL"]);
210 $result = $obj->filterData([$plugin_info]);
211 $this->assertCount(0, $result);
213 $obj->setFilter([
"plugin_active" =>
"1"]);
214 $result = $obj->filterData([$plugin_info]);
215 $this->assertEquals($plugin_info, $result[0]);
217 $obj->setFilter([
"plugin_active" =>
"-1"]);
218 $result = $obj->filterData([$plugin_info]);
219 $this->assertCount(0, $result);
221 $obj->setFilter([
"slot_name" => [
"Repository"]]);
222 $result = $obj->filterData([$plugin_info]);
223 $this->assertEquals($plugin_info, $result[0]);
225 $obj->setFilter([
"slot_name" => [
"RepositoryFAILQualifiedNameFAIL"]]);
226 $result = $obj->filterData([$plugin_info]);
227 $this->assertCount(0, $result);
229 $obj->setFilter([
"component_name" => [
"QualifiedName"]]);
230 $result = $obj->filterData([$plugin_info]);
231 $this->assertEquals($plugin_info, $result[0]);
233 $obj->setFilter([
"component_name" => [
"QualifiedNameFAIL"]]);
234 $result = $obj->filterData([$plugin_info]);
235 $this->assertCount(0, $result);
241 public function getData(): array
243 return parent::getData();
247 $result = $obj->getData();
249 $this->assertIsArray($result);
250 $this->assertEmpty($result);
256 public function getData(): array
258 return parent::getData();
260 public function withDataWrapper(array
$data)
262 return parent::withData($data);
266 $obj = $obj->withDataWrapper([
"data1",
"data2"]);
267 $result = $obj->getData();
269 $this->assertIsArray($result);
270 $this->assertEquals(
"data1", $result[0]);
271 $this->assertEquals(
"data2", $result[1]);
276 $shy = $this->createMock(Shy::class);
278 $standard = $this->createMock(Standard::class);
280 ->expects($this->once())
287 ->expects($this->once())
289 ->willReturn($standard)
293 ->expects($this->once())
295 ->willReturn($dropdown)
316 return parent::getActions($plugin_info);
321 protected function clearParameter():
void 324 protected function getDropdownButton(
string $caption,
string $command):
Shy 330 $plugin_info = $this->createMock(ilPluginInfo::class);
332 ->expects($this->once())
333 ->method(
"isInstalled")
337 $result = $obj->getActions($plugin_info);
339 $this->assertInstanceOf(Shy::class, $result->getItems()[0]);
344 $shy = $this->createMock(Shy::class);
346 $standard = $this->createMock(Standard::class);
348 ->expects($this->once())
355 ->expects($this->once())
357 ->willReturn($standard)
361 ->expects($this->once())
363 ->willReturn($dropdown)
384 return parent::getActions($plugin_info);
389 protected function clearParameter():
void 392 protected function hasLang(
ilPluginInfo $plugin_info):
bool 396 protected function getDropdownButton(
string $caption,
string $command):
Shy 402 $plugin_info = $this->createMock(ilPluginInfo::class);
404 ->expects($this->once())
405 ->method(
"isInstalled")
409 ->expects($this->once())
414 ->expects($this->once())
415 ->method(
"isActivationPossible")
419 ->expects($this->once())
420 ->method(
"isUpdateRequired")
424 $result = $obj->getActions($plugin_info);
426 $this->assertInstanceOf(Shy::class, $result->getItems()[0]);
testGetImportantFields(bool $installed, bool $active)
ilObjComponentSettingsGUI $parent_gui
Interface Observer Contains several chained tasks and infos about them.
This describes commonalities between all types of Dropdowns.
This is how the factory for UI elements looks.
Simple value class for information about a plugin.
testGetActionsPluginNotInstalled()
static getImportantFieldData()
testGetActionsPluginInstalled()
ilObjComponentSettingsGUI: ilPermissionGUI
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
__construct(Container $dic, ilPlugin $plugin)
filter(string $filter_id, $class_path, string $cmd, bool $activated=true, bool $expanded=true)