/**
  * @param array $entitiesResult
  * @returns Revisions
  * @todo this could be factored into a different class?
  */
 private function newRevisionsFromResult(array $entitiesResult)
 {
     $revisions = new Revisions();
     foreach ($entitiesResult as $entityResult) {
         if (array_key_exists('missing', $entityResult)) {
             continue;
         }
         $revisions->addRevision(new Revision($this->getContentFromEntity($this->entityDeserializer->deserialize($entityResult)), new PageIdentifier(null, $entityResult['pageid']), $entityResult['lastrevid'], null, null, $entityResult['modified']));
     }
     return $revisions;
 }
示例#2
0
 /**
  * @param array $array
  *
  * @return Revisions
  */
 private function getRevisionsFromResult($array)
 {
     $revisions = new Revisions();
     $pageid = $array['pageid'];
     foreach ($array['revisions'] as $revision) {
         $revisions->addRevision(new Revision($this->getContent($array['contentmodel'], $revision['*']), new PageIdentifier(new Title($array['title'], $array['ns']), $pageid), $revision['revid'], new EditInfo($revision['comment'], array_key_exists('minor', $revision), array_key_exists('bot', $revision)), $revision['user'], $revision['timestamp']));
     }
     return $revisions;
 }
 /**
  * @dataProvider provideValidConstruction
  */
 public function testValidConstruction($input, $expected)
 {
     $revisions = new Revisions($input);
     $this->assertEquals($expected, $revisions->toArray());
 }