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 dist
|
||||||
// TODO validate source
|
// TODO validate source
|
||||||
|
|
|
@ -234,6 +234,28 @@ class ValidatingArrayLoaderTest extends \PHPUnit_Framework_TestCase
|
||||||
'support.source : invalid value, must be a string',
|
'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