/** * @param array $data * @param array $expected * @dataProvider getConfigDataDataProvider */ public function testGetConfigData(array $data, array $expected) { $userConfigurationDataMapper = new StoreConfigurationDataMapper(); $this->assertEquals($expected, $userConfigurationDataMapper->getConfigData($data)); }
/** * Installs user configuration * * @param \ArrayObject|array $data * @return void */ public function installUserConfig($data) { $userConfig = new StoreConfigurationDataMapper(); /** @var \Magento\Framework\App\State $appState */ $appState = $this->objectManagerProvider->get()->get('Magento\Framework\App\State'); $appState->setAreaCode('setup'); $configData = $userConfig->getConfigData($data); if (count($configData) === 0) { return; } /** @var \Magento\Config\Model\Config\Factory $configFactory */ $configFactory = $this->objectManagerProvider->get()->create('Magento\Config\Model\Config\Factory'); foreach ($configData as $key => $val) { $configModel = $configFactory->create(); $configModel->setDataByPath($key, $val); $configModel->save(); } }