/** * testGetMenuByItem * * @return void */ public function testGetMenuByItem() { $menuRepo = $this->menuRepository; $typeHandler = $this->typeHandler; $permissionHandler = $this->menuPermissionHandler; $cacheHandler = $this->cacheHandler; $menuPermission = $this->menuPermission; $menuHandler = new MenuRetrieveHandler($menuRepo, $typeHandler, $permissionHandler, $cacheHandler); $dummyMenu1 = new MenuEntity(['id' => 'main', 'title' => 'testTitle1', 'description' => 'testDescription'], new TreeCollection([new MenuItem(['id' => 'testMenuItem1'])])); $menuRepo->shouldReceive('getMenuIdByItem')->with('testItem')->andReturn('main'); $cacheHandler->shouldReceive('isExistCachedMenu')->andReturn(false); $cacheHandler->shouldReceive('setCachedMenu')->andReturn(true); $cacheHandler->shouldReceive('getMenuMap')->andReturn([]); $menuRepo->shouldReceive('findMenu')->andReturn($dummyMenu1); $permissionHandler->shouldReceive('getMenuPermissions')->andReturn(['main' => $menuPermission, '' => $menuPermission]); $menu = $menuHandler->getMenuByItem('testItem'); $this->assertEquals($dummyMenu1, $menu); }