Skip to content

Commit 6cd3e6c

Browse files
authored
Merge pull request #2 from sveneld/bug-fix-array-in-namespaces
fix parsing of multiple directories in psr-4
2 parents 4849971 + ea7d43b commit 6cd3e6c

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

src/Suin/Sniffs/Classes/PSR4/AutoloadabilityInspectorsFactory.php

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -40,20 +40,30 @@ private static function getPsr4Directories(
4040
$psr4Directories = [];
4141

4242
if (isset($data['autoload']['psr-4'])) {
43-
foreach ($data['autoload']['psr-4'] as $namespace => $dir) {
44-
$psr4Directories[] = new AutoloadabilityInspector(
45-
\dirname($filename) . '/' . $dir,
46-
$namespace
47-
);
43+
foreach ($data['autoload']['psr-4'] as $namespace => $dirs) {
44+
if (!is_array($dirs)) {
45+
$dirs = [$dirs];
46+
}
47+
foreach ($dirs as $dir) {
48+
$psr4Directories[] = new AutoloadabilityInspector(
49+
\dirname($filename) . '/' . $dir,
50+
$namespace
51+
);
52+
}
4853
}
4954
}
5055

5156
if (isset($data['autoload-dev']['psr-4'])) {
52-
foreach ($data['autoload-dev']['psr-4'] as $namespace => $dir) {
53-
$psr4Directories[] = new AutoloadabilityInspector(
54-
\dirname($filename) . '/' . $dir,
55-
$namespace
56-
);
57+
foreach ($data['autoload-dev']['psr-4'] as $namespace => $dirs) {
58+
if (!is_array($dirs)) {
59+
$dirs = [$dirs];
60+
}
61+
foreach ($dirs as $dir) {
62+
$psr4Directories[] = new AutoloadabilityInspector(
63+
\dirname($filename) . '/' . $dir,
64+
$namespace
65+
);
66+
}
5767
}
5868
}
5969
return new AutoloadabilityInspectors(...$psr4Directories);

0 commit comments

Comments
 (0)