public function testGetPropertyValuesFromCacheForAvailableHash() { $expected = array(new DIWikiPage('Bar', NS_MAIN)); $subject = new DIWikiPage('Foo', NS_MAIN); $circularReferenceGuard = $this->getMockBuilder('\\SMW\\CircularReferenceGuard')->disableOriginalConstructor()->getMock(); $circularReferenceGuard->expects($this->once())->method('isCircularByRecursionFor')->will($this->returnValue(false)); $store = $this->getMockBuilder('\\SMW\\SQLStore\\SQLStore')->disableOriginalConstructor()->getMock(); $store->expects($this->once())->method('getRedirectTarget')->will($this->returnValue(new DIWikiPage('Bar', NS_MAIN))); $container = $this->getMockBuilder('\\Onoi\\BlobStore\\Container')->disableOriginalConstructor()->getMock(); $container->expects($this->once())->method('has')->will($this->returnValue(true)); $container->expects($this->once())->method('get')->with($this->stringContains('pv:'))->will($this->returnValue($expected)); $blobStore = $this->getMockBuilder('\\Onoi\\BlobStore\\BlobStore')->disableOriginalConstructor()->getMock(); $blobStore->expects($this->once())->method('canUse')->will($this->returnValue(true)); $blobStore->expects($this->once())->method('read')->will($this->returnValue($container)); $instance = new CachedValueLookupStore($store, $blobStore); $instance->setCircularReferenceGuard($circularReferenceGuard); $this->assertEquals($expected, $instance->getPropertyValues($subject, new DIProperty('Foobar'))); }