/** * @since 2.0 * * @return CachedFactbox */ public function newCachedFactbox() { $applicationFactory = ApplicationFactory::getInstance(); $cachedFactbox = new CachedFactbox($applicationFactory->getCache($applicationFactory->getSettings()->get('smwgCacheType'))); // Month = 30 * 24 * 3600 $cachedFactbox->setExpiryInSeconds(2592000); $cachedFactbox->isEnabled($applicationFactory->getSettings()->get('smwgFactboxUseCache')); return $cachedFactbox; }
/** * @dataProvider outputDataProvider */ public function testProcessAndRetrieveContent($parameters, $expected) { $this->applicationFactory->getSettings()->set('smwgNamespacesWithSemanticLinks', $parameters['smwgNamespacesWithSemanticLinks']); $this->applicationFactory->getSettings()->set('smwgShowFactbox', $parameters['smwgShowFactbox']); $this->applicationFactory->registerObject('Store', $parameters['store']); $outputPage = $parameters['outputPage']; $instance = new CachedFactbox($this->memoryCache, $this->cacheOptions); $this->assertEmpty($instance->retrieveContent($outputPage)); $instance->prepareFactboxContent($outputPage, $parameters['parserOutput']); $result = $outputPage->mSMWFactboxText; $this->assertPreProcess($expected, $result, $outputPage, $instance); // Re-run on the same instance $instance->prepareFactboxContent($outputPage, $parameters['parserOutput']); $this->assertPostProcess($expected, $result, $outputPage, $instance); }