/** * @since 2.4 * * @param Store $store * * @return QueryDependencyLinksStore */ public function newQueryDependencyLinksStore($store) { $queryDependencyLinksStore = new QueryDependencyLinksStore($this->newQueryResultDependencyListResolver(), new DependencyLinksTableUpdater($store)); $queryDependencyLinksStore->setEnabled(ApplicationFactory::getInstance()->getSettings()->get('smwgEnabledQueryDependencyLinksStore')); $queryDependencyLinksStore->isCommandLineMode($GLOBALS['wgCommandLineMode']); return $queryDependencyLinksStore; }
public function testTryDoUpdateDependenciesByForWhenDependencyListReturnsEmpty() { $idTable = $this->getMockBuilder('\\stdClass')->setMethods(array('getIDFor'))->getMock(); $idTable->expects($this->any())->method('getIDFor')->will($this->onConsecutiveCalls(42, 1001)); $store = $this->getMockBuilder('\\SMW\\SQLStore\\SQLStore')->disableOriginalConstructor()->setMethods(array('getObjectIds'))->getMockForAbstractClass(); $store->expects($this->any())->method('getObjectIds')->will($this->returnValue($idTable)); $dependencyLinksTableUpdater = $this->getMockBuilder('\\SMW\\SQLStore\\QueryDependency\\DependencyLinksTableUpdater')->disableOriginalConstructor()->getMock(); $dependencyLinksTableUpdater->expects($this->any())->method('getStore')->will($this->returnValue($store)); $queryResultDependencyListResolver = $this->getMockBuilder('\\SMW\\SQLStore\\QueryDependency\\QueryResultDependencyListResolver')->disableOriginalConstructor()->getMock(); $queryResultDependencyListResolver->expects($this->any())->method('getDependencyListByLateRetrievalFrom')->will($this->returnValue(array())); $queryResultDependencyListResolver->expects($this->once())->method('getDependencyListFrom')->will($this->returnValue(array())); $instance = new QueryDependencyLinksStore($queryResultDependencyListResolver, $dependencyLinksTableUpdater); $instance->setEnabled(true); $query = $this->getMockBuilder('\\SMWQuery')->disableOriginalConstructor()->getMock(); $query->expects($this->any())->method('getContextPage')->will($this->returnValue(DIWikiPage::newFromText(__METHOD__))); $query->expects($this->any())->method('getLimit')->will($this->returnValue(1)); $queryResult = $this->getMockBuilder('\\SMWQueryResult')->disableOriginalConstructor()->getMock(); $queryResult->expects($this->any())->method('getQuery')->will($this->returnValue($query)); $instance->doUpdateDependenciesFrom($queryResult); $this->testEnvironment->executePendingDeferredUpdates(); }