/** * Generates the HTML for a Reference object. * * @param Reference $reference * * @return string HTML */ private function getHtmlForReference(Reference $reference) { $snaks = $reference->getSnaks(); $referenceSnaksByProperty = new ByPropertyIdGrouper($snaks); $snaklistviewsHtml = ''; foreach ($referenceSnaksByProperty->getPropertyIds() as $propertyId) { $snaklistviewsHtml .= $this->getSnaklistviewHtml($referenceSnaksByProperty->getByPropertyId($propertyId)); } return $this->templateFactory->render('wikibase-referenceview', 'wikibase-referenceview-' . $reference->getHash(), $snaklistviewsHtml); }
/** * @dataProvider provideHasPropertyId */ public function testHasPropertyId(array $propertyIdProviders, $propertyId, $expectedValue) { $byPropertyIdGrouper = new ByPropertyIdGrouper($propertyIdProviders); $this->assertEquals($expectedValue, $byPropertyIdGrouper->hasPropertyId(new PropertyId($propertyId))); }