public function testAddStringCondition() { $instance = new RequestOptions(); $instance->addStringCondition('Foo', StringCondition::STRCOND_PRE); foreach ($instance->getStringConditions() as $stringCondition) { $this->assertInstanceOf('\\SMW\\StringCondition', $stringCondition); $this->assertFalse($stringCondition->isDisjunctiveCondition); } $this->assertEquals('-1#0##1##1#|Foo#0#', $instance->getHash()); }
/** * @since 2.4 * * @param DIWikiPage $subject * @param DIProperty $property * @param RequestOptions|null $requestOptions * * @return array */ public function getPropertyValues(DIWikiPage $subject, DIProperty $property, RequestOptions $requestOptions = null) { $key = $property->getKey() . ':' . $subject->getSubobjectName() . ':' . ($requestOptions !== null ? $requestOptions->getHash() : null); $container = $this->blobStore->read($this->getRootHashFrom($subject)); if ($container->has($key)) { return $container->get($key); } $dataItems = $this->store->getPropertyValues($subject, $property, $requestOptions); $container->set($key, $dataItems); $this->blobStore->save($container); return $dataItems; }