public function test_reverse_merge_unique__three() { $merged = \UArray::reverseMergeUnique(array(1, 2, 3), array(2, 3, 4), array(5, 2)); $this->assertEquals(array(1, 3, 4, 5, 2), $merged); }
protected function findExtensions($namespace) { $this->initializeNamespaces(); $files = []; $old = []; $namespaces = [$namespace, 'Staq\\Core\\Ground']; while (array_diff($namespaces, $old)) { $extensions = $this->formatExtensionsFromNamespaces($namespaces); foreach ($extensions as $extension) { $files[] = $extension . '/setting/Application.ini'; } $ini = (new \Pixel418\Iniliq\IniParser())->parse(array_reverse($files)); $old = $namespaces; $namespaces = array_reverse($ini->getAsArray('extension.list')); $namespaces = \UArray::reverseMergeUnique($old, $namespaces); } return $this->formatExtensionsFromNamespaces($namespaces); }