Fix MetaModel::EnumPlugins unit tests

This commit is contained in:
Molkobain
2021-05-05 14:58:50 +02:00
parent 2a9e16bd2c
commit 34647cc402

View File

@@ -206,27 +206,24 @@ class MetaModelTest extends ItopDataTestCase
$pluginInstances = $m_PluginManager->EnumPlugins($interface, $sFilterInstanceOf); $pluginInstances = $m_PluginManager->EnumPlugins($interface, $sFilterInstanceOf);
$this->assertCount(sizeof($expectedResults), $pluginInstances); $this->assertCount(sizeof($expectedResults), $pluginInstances);
foreach($pluginInstances as $pluginInstance) foreach ($pluginInstances as $pluginInstance) {
{ if ($sFilterInstanceOf !== null) {
if ($sFilterInstanceOf!==null)
{
$this->assertTrue($pluginInstance instanceof $sFilterInstanceOf); $this->assertTrue($pluginInstance instanceof $sFilterInstanceOf);
} }
} }
$index=0; $index = 0;
foreach($expectedResults as $expectedInterface) foreach ($expectedResults as $expectedPHPClass => $expectedInterface) {
{ $this->assertTrue(is_a($pluginInstances[$expectedPHPClass], $expectedInterface));
$this->assertTrue(is_a($pluginInstances[$index], $expectedInterface));
$index++; $index++;
} }
} }
public function enumPluginsProvider(){ public function enumPluginsProvider(){
$aInterfaces = [ $aInterfaces = [
"empty conf" => [ 0, [], [], [], 'Wizzard'], "empty conf" => [0, [], [], [], 'Wizzard'],
"simple instance retrieval" => [ 1, [Gryffindor::class], [ 'Wizzard' => [ Gryffindor::class]], [], 'Wizzard'], "simple instance retrieval" => [1, [Gryffindor::class => Gryffindor::class], ['Wizzard' => [Gryffindor::class]], [], 'Wizzard'],
"check instanceof parameter" => [ 1, [Gryffindor::class, Slytherin::class], [ 'Wizzard' => [ Gryffindor::class, Slytherin::class]], [], 'Wizzard'], "check instanceof parameter" => [1, [Gryffindor::class => Gryffindor::class, Slytherin::class => Slytherin::class], ['Wizzard' => [Gryffindor::class, Slytherin::class]], [], 'Wizzard'],
"try to retrieve a non instanciable object" => [ 1, [Gryffindor::class], [ 'Wizzard' => [ Gryffindor::class, Muggle::class]], [], 'Wizzard', Gryffindor::class ], "try to retrieve a non instanciable object" => [1, [Gryffindor::class => Gryffindor::class], ['Wizzard' => [Gryffindor::class, Muggle::class]], [], 'Wizzard', Gryffindor::class],
]; ];
return $aInterfaces; return $aInterfaces;
} }