/** * testGetMenuTheme * * @return void */ public function testGetMenuTheme() { $configManager = $this->configManager; $themeHandler = $this->themeHandler; $configManager->shouldReceive('get')->andReturn('defaultTheme'); $dummyMenu = new MenuEntity(['id' => 'testMenu', 'title' => 'testTitle', 'description' => 'testDescription'], new TreeCollection([new MenuItem(['id' => 'testMenu'])]), new Collection()); $menuConfigHandler = new MenuConfigHandler($configManager, $themeHandler); $menuTheme = $menuConfigHandler->getMenuTheme($dummyMenu); $this->assertEquals('defaultTheme', $menuTheme); }
/** * createItem * * @param IlluminateConfig $config laravel config * @param MenuRetrieveHandler $menuHandler menu handler * @param ModuleHandler $moduleHandler module handler * @param MenuConfigHandler $configHandler menu config handler * @param SiteHandler $siteHandler site handler * @param string $menuId menu id * * @return RendererInterface */ public function createItem(IlluminateConfig $config, MenuRetrieveHandler $menuHandler, ModuleHandler $moduleHandler, MenuConfigHandler $configHandler, SiteHandler $siteHandler, $menuId) { $menu = $menuHandler->getMenu($menuId); $menuConfig = $configHandler->getMenuTheme($menu); $parent = Request::get('parent', $menuId); $selectedMenuType = Request::get('selectType'); if ($selectedMenuType === null) { return Redirect::route('settings.menu.select.types', [$menu->id])->with('alert', ['type' => 'warning', 'message' => 'type 을 선택하십시오']); } $siteKey = $siteHandler->getCurrentSiteKey(); $menuTypeObj = $moduleHandler->getModuleObject($selectedMenuType); $menuMaxDepth = $config->get('xe.menu.maxDepth'); return Presenter::make('menu.createItem', ['menu' => $menu, 'menuType' => $menuTypeObj, 'siteKey' => $siteKey, 'maxDepth' => $menuMaxDepth, 'parent' => $parent, 'selectedType' => $selectedMenuType, 'menuTypeArgs' => ['menuType' => $menuTypeObj, 'action' => 'createMenuForm', 'param' => []], 'menuConfig' => $menuConfig]); }