2 declare(strict_types = 1);
25 use TYPO3\TestingFramework\Core\Unit\UnitTestCase;
36 $result = $moduleLoader->validateSortAndInitializeModules([]);
38 self::assertSame([], $result);
44 'empty' => [[
'modulename' => []]],
45 'no array' => [[
'modulename' =>
'']],
55 $this->expectException(InvalidConfigurationException::class);
56 $this->expectExceptionCode(1519490105);
59 $moduleLoader->validateSortAndInitializeModules($configuration);
65 'module class name is no string' => [
67 'modulename' => [
'module' => []],
70 'module class name is empty' => [
72 'modulename' => [
'module' =>
''],
75 'module class name is no valid class' => [
77 'modulename' => [
'module' =>
'nonExistingClassName'],
80 'module class name does not implement AdminPanelModuleInterface' => [
82 'modulename' => [
'module' => \stdClass::class],
94 $this->expectException(InvalidConfigurationException::class);
95 $this->expectExceptionCode(1519490112);
98 $moduleLoader->validateSortAndInitializeModules($configuration);
108 'module' => MainModuleFixture::class
112 $dependencyOrderingServiceProphecy = $this->prophesize(DependencyOrderingService::class);
113 GeneralUtility::addInstance(DependencyOrderingService::class, $dependencyOrderingServiceProphecy->reveal());
114 $dependencyOrderingServiceProphecy->orderByDependencies($config)->willReturn($config);
117 $moduleLoader->validateSortAndInitializeModules($config);
119 $dependencyOrderingServiceProphecy->orderByDependencies($config)->shouldHaveBeenCalled();
129 'module' => MainModuleFixture::class
132 'module' => DisabledMainModuleFixture::class
136 $dependencyOrderingServiceProphecy = $this->prophesize(DependencyOrderingService::class);
137 GeneralUtility::addInstance(DependencyOrderingService::class, $dependencyOrderingServiceProphecy->reveal());
138 $dependencyOrderingServiceProphecy->orderByDependencies($config)->willReturn($config);
141 $result = $moduleLoader->validateSortAndInitializeModules($config);
143 self::assertCount(1, $result);
144 self::assertInstanceOf(MainModuleFixture::class, $result[
'example']);
145 self::assertArrayNotHasKey(
'example-disabled', $result);