/**
  * @since 2.4
  *
  * @param Store $store
  * @param CompositePropertyTableDiffIterator $compositePropertyTableDiffIterator
  *
  * @return EntityIdListRelevanceDetectionFilter
  */
 public function newEntityIdListRelevanceDetectionFilter(Store $store, CompositePropertyTableDiffIterator $compositePropertyTableDiffIterator)
 {
     $entityIdListRelevanceDetectionFilter = new EntityIdListRelevanceDetectionFilter($store, $compositePropertyTableDiffIterator);
     $entityIdListRelevanceDetectionFilter->setPropertyExemptionlist(ApplicationFactory::getInstance()->getSettings()->get('smwgQueryDependencyPropertyExemptionlist'));
     $entityIdListRelevanceDetectionFilter->setAffiliatePropertyDetectionlist(ApplicationFactory::getInstance()->getSettings()->get('smwgQueryDependencyAffiliatePropertyDetectionlist'));
     return $entityIdListRelevanceDetectionFilter;
 }
 public function testgetFilteredIdListOnAffiliatePredefinedProperty()
 {
     $orderedDiffByTable = array('fpt_dat' => array('property' => array('key' => '_MDAT', 'p_id' => 29), 'insert' => array(array('s_id' => 201, 'o_serialized' => '1/2016/6/1/11/1/48/0', 'o_sortkey' => '2457540.9595833')), 'delete' => array(array('s_id' => 202, 'o_serialized' => '1/2016/6/1/11/1/59/0', 'o_sortkey' => '2457540.9582292'))));
     $store = $this->getMockBuilder('\\SMW\\Store')->disableOriginalConstructor()->getMockForAbstractClass();
     $compositePropertyTableDiffIterator = $this->getMockBuilder('\\SMW\\SQLStore\\CompositePropertyTableDiffIterator')->disableOriginalConstructor()->setMethods(array('getCombinedIdListOfChangedEntities', 'getOrderedDiffByTable'))->getMock();
     $compositePropertyTableDiffIterator->expects($this->once())->method('getCombinedIdListOfChangedEntities')->will($this->returnValue(array(1001)));
     $compositePropertyTableDiffIterator->expects($this->any())->method('getOrderedDiffByTable')->will($this->returnValue($orderedDiffByTable));
     $instance = new EntityIdListRelevanceDetectionFilter($store, $compositePropertyTableDiffIterator);
     $instance->setAffiliatePropertyDetectionlist(array('_MDAT'));
     $this->assertEquals(array(1001, 201, 202), $instance->getFilteredIdList());
 }