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);
70 public function getImportantFields(
ilPluginInfo $plugin_info): array
72 return parent::getImportantFields($plugin_info);
76 $plugin_info = $this->createMock(ilPluginInfo::class);
78 ->expects($this->once())
79 ->method(
"isInstalled")
80 ->willReturn($installed)
83 ->expects($this->once())
88 $result1 =
"not_installed";
90 $result1 =
"installed";
93 $result2 =
"inactive";
95 $result2 =
"cmps_active";
98 $result = $obj->getImportantFields($plugin_info);
100 $this->assertEquals($result1, $result[0]);
101 $this->assertEquals($result2, $result[1]);
113 $plugin_info = $this->createMock(ilPluginInfo::class);
115 ->expects($this->once())
116 ->method(
"isInstalled")
120 ->expects($this->once())
125 ->expects($this->once())
126 ->method(
"isUpdateRequired")
130 $result = $obj->getContent($plugin_info);
132 $this->assertIsArray($result);
138 public function boolToString(
bool $value):
string 140 return parent::boolToString($value);
144 $result = $obj->boolToString(
true);
145 $this->assertEquals(
"yes", $result);
147 $result = $obj->boolToString(
false);
148 $this->assertEquals(
"no", $result);
154 public function setFilter(array $filter):
void 159 public function filterData(array
$data): array
161 return parent::filterData($data);
165 $plugin_slot = $this->createMock(ilPluginSlotInfo::class);
168 ->willReturn(
"Repository")
171 $component = $this->createMock(ilComponentInfo::class);
173 ->method(
"getQualifiedName")
174 ->willReturn(
"QualifiedName")
177 $plugin_info = $this->createMock(ilPluginInfo::class);
180 ->willReturn(
"TestRepo")
191 ->method(
"getPluginSlot")
192 ->willReturn($plugin_slot)
195 ->method(
"getComponent")
196 ->willReturn($component)
199 $obj->setFilter([
"plugin_name" =>
"TestRepo"]);
200 $result = $obj->filterData([$plugin_info]);
201 $this->assertEquals($plugin_info, $result[0]);
203 $obj->setFilter([
"plugin_name" =>
"TestRepoFAIL"]);
204 $result = $obj->filterData([$plugin_info]);
205 $this->assertCount(0, $result);
207 $obj->setFilter([
"plugin_id" =>
"xvw"]);
208 $result = $obj->filterData([$plugin_info]);
209 $this->assertEquals($plugin_info, $result[0]);
211 $obj->setFilter([
"plugin_id" =>
"xvwFAIL"]);
212 $result = $obj->filterData([$plugin_info]);
213 $this->assertCount(0, $result);
215 $obj->setFilter([
"plugin_active" =>
"1"]);
216 $result = $obj->filterData([$plugin_info]);
217 $this->assertEquals($plugin_info, $result[0]);
219 $obj->setFilter([
"plugin_active" =>
"-1"]);
220 $result = $obj->filterData([$plugin_info]);
221 $this->assertCount(0, $result);
223 $obj->setFilter([
"slot_name" => [
"Repository"]]);
224 $result = $obj->filterData([$plugin_info]);
225 $this->assertEquals($plugin_info, $result[0]);
227 $obj->setFilter([
"slot_name" => [
"RepositoryFAILQualifiedNameFAIL"]]);
228 $result = $obj->filterData([$plugin_info]);
229 $this->assertCount(0, $result);
231 $obj->setFilter([
"component_name" => [
"QualifiedName"]]);
232 $result = $obj->filterData([$plugin_info]);
233 $this->assertEquals($plugin_info, $result[0]);
235 $obj->setFilter([
"component_name" => [
"QualifiedNameFAIL"]]);
236 $result = $obj->filterData([$plugin_info]);
237 $this->assertCount(0, $result);
243 public function getData(): array
245 return parent::getData();
249 $result = $obj->getData();
251 $this->assertIsArray($result);
252 $this->assertEmpty($result);
258 public function getData(): array
260 return parent::getData();
262 public function withDataWrapper(array
$data)
264 return parent::withData($data);
268 $obj = $obj->withDataWrapper([
"data1",
"data2"]);
269 $result = $obj->getData();
271 $this->assertIsArray($result);
272 $this->assertEquals(
"data1", $result[0]);
273 $this->assertEquals(
"data2", $result[1]);
278 $shy = $this->createMock(Shy::class);
280 $standard = $this->createMock(Standard::class);
282 ->expects($this->once())
289 ->expects($this->once())
291 ->willReturn($standard)
295 ->expects($this->once())
297 ->willReturn($dropdown)
318 return parent::getActions($plugin_info);
323 protected function clearParameter():
void 326 protected function getDropdownButton(
string $caption,
string $command):
Shy 332 $plugin_info = $this->createMock(ilPluginInfo::class);
334 ->expects($this->once())
335 ->method(
"isInstalled")
339 $result = $obj->getActions($plugin_info);
341 $this->assertInstanceOf(Shy::class, $result->getItems()[0]);
346 $shy = $this->createMock(Shy::class);
348 $standard = $this->createMock(Standard::class);
350 ->expects($this->once())
357 ->expects($this->once())
359 ->willReturn($standard)
363 ->expects($this->once())
365 ->willReturn($dropdown)
386 return parent::getActions($plugin_info);
391 protected function clearParameter():
void 394 protected function hasLang(
ilPluginInfo $plugin_info):
bool 398 protected function getDropdownButton(
string $caption,
string $command):
Shy 404 $plugin_info = $this->createMock(ilPluginInfo::class);
406 ->expects($this->once())
407 ->method(
"isInstalled")
411 ->expects($this->once())
416 ->expects($this->once())
417 ->method(
"isActivationPossible")
421 ->expects($this->once())
422 ->method(
"isUpdateRequired")
426 $result = $obj->getActions($plugin_info);
428 $this->assertInstanceOf(Shy::class, $result->getItems()[0]);
testGetImportantFields(bool $installed, bool $active)
getImportantFieldData
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)