public function testFromCache()
 {
     $instance = new Message();
     $instance->clear();
     $instance->registerCallbackHandler('SimpleText', function ($parameters, $language) {
         return 'Foo';
     });
     $instance->get('Foo', 'SimpleText');
     $this->assertEquals(array('inserts' => 1, 'deletes' => 0, 'max' => 1000, 'count' => 1, 'hits' => 0, 'misses' => 1), $instance->getCache()->getStats());
     $instance->get('Foo', 'SimpleText', 'ooo');
     $this->assertEquals(array('inserts' => 2, 'deletes' => 0, 'max' => 1000, 'count' => 2, 'hits' => 0, 'misses' => 2), $instance->getCache()->getStats());
     // Repeated request
     $instance->get('Foo', 'SimpleText');
     $this->assertEquals(array('inserts' => 2, 'deletes' => 0, 'max' => 1000, 'count' => 2, 'hits' => 1, 'misses' => 2), $instance->getCache()->getStats());
     $instance->deregisterHandlerFor('SimpleText');
 }
 public function testGetInfolinkTextOnStringValueWithServiceLinks()
 {
     $service = 'testGetInfolinkTextOnStringValueWithServiceLinks';
     $this->cachedPropertyValuesPrefetcher->expects($this->atLeastOnce())->method('getPropertyValues')->will($this->returnValue(array($this->dataItemFactory->newDIBlob($service))));
     // Manipulating the Message cache is a hack!!
     $parameters = array("smw_service_" . $service, 'Bar');
     Message::getCache()->save(Message::getHash($parameters, Message::TEXT, Message::CONTENT_LANGUAGE), 'SERVICELINK-A|SERVICELINK-B');
     $stringValue = new StringValue('_txt');
     $stringValue->setOption(StringValue::OPT_USER_LANGUAGE, 'en');
     $stringValue->setOption(StringValue::OPT_CONTENT_LANGUAGE, 'en');
     $stringValue->setProperty($this->dataItemFactory->newDIProperty('Foo'));
     $stringValue->setUserValue('Bar');
     $instance = new InfoLinksProvider($stringValue);
     $this->assertContains('<div class="smwttcontent">&#x005B;SERVICELINK-B SERVICELINK-A]</div>', $instance->getInfolinkText(SMW_OUTPUT_WIKI));
     $this->assertContains('<div class="smwttcontent"><a href="SERVICELINK-B">SERVICELINK-A</a></div>', $instance->getInfolinkText(SMW_OUTPUT_HTML));
 }