Validate autoload options are of a supported type
Checks to ensure that the autoload options are one of the three supported autoload types. closes #952pull/1830/head
parent
028d95db63
commit
ffd45b7678
|
@ -179,7 +179,15 @@ class ValidatingArrayLoader implements LoaderInterface
|
|||
}
|
||||
}
|
||||
|
||||
// TODO validate autoload
|
||||
if ($this->validateArray('autoload') && !empty($this->config['autoload'])) {
|
||||
$types = array('psr-0', 'classmap', 'files');
|
||||
foreach ($this->config['autoload'] as $type => $typeConfig) {
|
||||
if (!in_array($type, $types)) {
|
||||
$this->errors[] = 'autoload : invalid value ('.$type.'), must be one of '.implode(', ', $types);
|
||||
unset($this->config['autoload'][$type]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// TODO validate dist
|
||||
// TODO validate source
|
||||
|
|
|
@ -234,6 +234,28 @@ class ValidatingArrayLoaderTest extends \PHPUnit_Framework_TestCase
|
|||
'support.source : invalid value, must be a string',
|
||||
)
|
||||
),
|
||||
array(
|
||||
array(
|
||||
'name' => 'foo/bar',
|
||||
'autoload' => 'strings',
|
||||
),
|
||||
array(
|
||||
'autoload : should be an array, string given'
|
||||
)
|
||||
),
|
||||
array(
|
||||
array(
|
||||
'name' => 'foo/bar',
|
||||
'autoload' => array(
|
||||
'psr0' => array(
|
||||
'foo' => 'src',
|
||||
),
|
||||
),
|
||||
),
|
||||
array(
|
||||
'autoload : invalid value (psr0), must be one of psr-0, classmap, files'
|
||||
)
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue