bug #30007 [FrameworkBundle] Support use of hyphen in asset package name (damaya, XuruDragon)
This PR was merged into the 3.4 branch. Discussion ---------- [FrameworkBundle] Support use of hyphen in asset package name This PR is a continuity of #28128 | Q | A | ------------- | --- | Branch? | master | Bug fix? | yes | New feature? | no | BC breaks? | no | Deprecations? | no | Tests pass? | yes | Fixed tickets | #29122 | License | MIT | Doc PR | n/a According to issue https://github.com/symfony/symfony-docs/pull/10442, we tested in a demo bundle, for example in src/AppBundle/Resources/config/config.yml a package using hyphens: app-client-frontend, and withouth the patch it fails because the package is not recognized. With the patch, it works as expected. ```yaml framework: assets: packages: app-client-frontend: version: "%env(FRONTEND_VERSION)%" version_format: '%%2$s/dist/%%1$s' base_urls: - "%env(FRONTEND_URL)%" ``` Commits -------5c58b6e875
Add PackageNameTest to ConfigurationTest also add in the changelog the corresponding entry to this PR30b6a4f7bf
Support use of hyphen in asset package name
This commit is contained in:
commit
c95fdbd074
@ -642,6 +642,7 @@ class Configuration implements ConfigurationInterface
|
||||
->fixXmlConfig('package')
|
||||
->children()
|
||||
->arrayNode('packages')
|
||||
->normalizeKeys(false)
|
||||
->useAttributeAsKey('name')
|
||||
->prototype('array')
|
||||
->fixXmlConfig('base_url')
|
||||
|
@ -211,6 +211,35 @@ class ConfigurationTest extends TestCase
|
||||
$this->assertEquals($defaultConfig, $config['assets']);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider provideValidAssetsPackageNameConfigurationTests
|
||||
*/
|
||||
public function testValidAssetsPackageNameConfiguration($packageName)
|
||||
{
|
||||
$processor = new Processor();
|
||||
$configuration = new Configuration(true);
|
||||
$config = $processor->processConfiguration($configuration, [
|
||||
[
|
||||
'assets' => [
|
||||
'packages' => [
|
||||
$packageName => [],
|
||||
],
|
||||
],
|
||||
],
|
||||
]);
|
||||
|
||||
$this->assertArrayHasKey($packageName, $config['assets']['packages']);
|
||||
}
|
||||
|
||||
public function provideValidAssetsPackageNameConfigurationTests()
|
||||
{
|
||||
return [
|
||||
['foobar'],
|
||||
['foo-bar'],
|
||||
['foo_bar'],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider provideInvalidAssetConfigurationTests
|
||||
*/
|
||||
|
Reference in New Issue
Block a user