/** * testSetSiteInstanceCache * * @return void */ public function testSetSiteInstanceCache() { $cache = $this->cache; $cache->shouldReceive('forever')->andReturn(); $cacheHandler = new InstanceRouteCacheHandler($cache, true); $cacheHandler->setSiteInstanceCache('defaultSiteKey', []); }
/** * Get All Instance Route of site * return list of all Instance Route from Repo * * @param string $siteKey to get siteKey * * @return InstanceRoute[] */ public function getsBySite($siteKey) { if ($this->cache->isExistCachedSiteInstanceRoutes($siteKey)) { $instanceRoutes = $this->cache->getCachedSiteInstanceRoutes($siteKey); array_merge($this->loadedInstanceRoutes, $instanceRoutes); return $instanceRoutes; } $filter = function ($query) use($siteKey) { return $query->where('site', '=', $siteKey); }; $instanceRoutes = $this->instanceRouteRepository->fetch($filter); $this->loadedInstanceRoutes = array_merge($this->loadedInstanceRoutes, $instanceRoutes); $this->cache->setSiteInstanceCache($siteKey, $instanceRoutes); return $instanceRoutes; }