示例#1
0
 /**
  * Adds fake serialization to show a sitelink has been removed
  *
  * @since 0.5
  *
  * @param SiteLinkList $siteLinkList
  * @param array|string $path where the data is located
  */
 public function addRemovedSiteLinks(SiteLinkList $siteLinkList, $path)
 {
     $serializer = $this->serializerFactory->newSiteLinkSerializer();
     $values = array();
     foreach ($siteLinkList->toArray() as $siteLink) {
         $value = $serializer->serialize($siteLink);
         $value['removed'] = '';
         $values[$siteLink->getSiteId()] = $value;
     }
     if ($this->addMetaData) {
         $values = $this->modifier->modifyUsingCallback($values, null, $this->callbackFactory->getCallbackToSetArrayType('kvp', 'site'));
         $values[ApiResult::META_KVP_MERGE] = true;
     }
     $this->setList($path, 'sitelinks', $values, 'sitelink');
 }
示例#2
0
 public function testToArray()
 {
     $list = new SiteLinkList();
     $list->addNewSiteLink('enwiki', 'foo');
     $list->addNewSiteLink('dewiki', 'bar');
     $expected = array('enwiki' => new SiteLink('enwiki', 'foo'), 'dewiki' => new SiteLink('dewiki', 'bar'));
     $this->assertEquals($expected, $list->toArray());
 }