From 98d8a3e8543745b95bc38f9fe579420b2baa99ad Mon Sep 17 00:00:00 2001 From: Bohdan Korablov <bkorablov@magento.com> Date: Thu, 22 Dec 2016 15:51:44 +0200 Subject: [PATCH] MAGETWO-62491: [PR] Delivery of stories (sprint 3) --- .../Config/Model/Placeholder/Environment.php | 2 +- .../Model/Placeholder/EnvironmentTest.php | 29 +++++++++++++++++-- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/code/Magento/Config/Model/Placeholder/Environment.php b/app/code/Magento/Config/Model/Placeholder/Environment.php index b5c1c6be89c..96ffadc96c6 100644 --- a/app/code/Magento/Config/Model/Placeholder/Environment.php +++ b/app/code/Magento/Config/Model/Placeholder/Environment.php @@ -59,7 +59,7 @@ class Environment implements PlaceholderInterface */ public function restore($template) { - $template = str_replace(static::PREFIX, '', $template); + $template = preg_replace('/^' . static::PREFIX . '/', '', $template); $template = str_replace('__', '/', $template); $template = strtolower($template); diff --git a/app/code/Magento/Config/Test/Unit/Model/Placeholder/EnvironmentTest.php b/app/code/Magento/Config/Test/Unit/Model/Placeholder/EnvironmentTest.php index 6d1113a7750..64b4e6e37fb 100644 --- a/app/code/Magento/Config/Test/Unit/Model/Placeholder/EnvironmentTest.php +++ b/app/code/Magento/Config/Test/Unit/Model/Placeholder/EnvironmentTest.php @@ -47,8 +47,8 @@ class EnvironmentTest extends \PHPUnit_Framework_TestCase public function testGenerate($path, $scope, $scopeId, $expected) { $this->assertSame( - $this->model->generate($path, $scope, $scopeId), - $expected + $expected, + $this->model->generate($path, $scope, $scopeId) ); } @@ -103,4 +103,29 @@ class EnvironmentTest extends \PHPUnit_Framework_TestCase [Environment::PREFIX . 'A@#$', false] ]; } + + /** + * @param string $template + * @param string $expected + * @dataProvider restoreDataProvider + */ + public function testRestore($template, $expected) + { + $this->assertSame( + $expected, + $this->model->restore($template) + ); + } + + /** + * @return array + */ + public function restoreDataProvider() + { + return [ + [Environment::PREFIX . 'TEST__CONFIG', 'test/config'], + [Environment::PREFIX . 'TEST__CONFIG__VALUE', 'test/config/value'], + [Environment::PREFIX . 'TEST__CONFIG_VALUE', 'test/config_value'], + ]; + } } -- GitLab