/** * @dataProvider instanceProvider * @param SnakList $array */ public function testAddSnak(SnakList $array) { $elementCount = $array->count(); $elements = $this->elementInstancesProvider(); $element = array_shift($elements); $element = $element[0][0]; if (!$array->hasSnak($element)) { ++$elementCount; } $this->assertEquals(!$array->hasSnak($element), $array->addSnak($element)); $this->assertEquals($elementCount, $array->count()); $this->assertFalse($array->addSnak($element)); $this->assertEquals($elementCount, $array->count()); }
private function isSubSnakList(SnakList $list, SnakList $container) { foreach ($list as $snak) { if (!$container->hasSnak($snak)) { return false; } } return true; }
/** * @since 0.4 * * @param SnakList $qualifiers * @param Summary $summary * * @throws ChangeOpException */ protected function setQualifier(SnakList $qualifiers, Summary $summary = null) { if (!$qualifiers->hasSnakHash($this->snakHash)) { throw new ChangeOpException("Qualifier with hash {$this->snakHash} does not exist"); } if ($qualifiers->hasSnak($this->snak)) { throw new ChangeOpException('The statement has already a qualifier with hash ' . $this->snak->getHash()); } $qualifiers->removeSnakHash($this->snakHash); $qualifiers->addSnak($this->snak); $this->updateSummary($summary, 'update', '', $this->getSnakSummaryArgs($this->snak)); }