/** * Compose optimal order of scenarios, so that Magento reinstalls will be reduced among scenario executions * * @return array */ protected function _getOptimizedScenarioList() { $optimizer = new Magento_Performance_Testsuite_Optimizer(); $scenarios = $this->_config->getScenarios(); $fixtureSets = array(); foreach ($scenarios as $scenario) { /** @var $scenario Magento_Performance_Scenario */ $fixtureSets[] = $scenario->getFixtures(); } $keys = $optimizer->optimizeFixtureSets($fixtureSets); $result = array(); foreach ($keys as $key) { $result[] = $scenarios[$key]; } return $result; }
/** * @param array $fixtureSets * @param array $expected * @dataProvider optimizeFixtureSetsDataProvider */ public function testOptimizeFixtureSets($fixtureSets, $expected) { $optimized = $this->_optimizer->optimizeFixtureSets($fixtureSets); $this->assertEquals($optimized, $expected); }