Liangent has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/84526


Change subject: Revert 3fab17d4 and 61dacb15 for PropertyParserFunction
......................................................................

Revert 3fab17d4 and 61dacb15 for PropertyParserFunction

Change-Id: Ibb94ebc4b6d14cf7a65abecbf06c8d28c9a1d544
---
M client/includes/parserhooks/PropertyParserFunction.php
M client/tests/phpunit/includes/parserhooks/PropertyParserFunctionTest.php
2 files changed, 17 insertions(+), 33 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/26/84526/1

diff --git a/client/includes/parserhooks/PropertyParserFunction.php 
b/client/includes/parserhooks/PropertyParserFunction.php
index 55bc65f..4941640 100644
--- a/client/includes/parserhooks/PropertyParserFunction.php
+++ b/client/includes/parserhooks/PropertyParserFunction.php
@@ -2,11 +2,9 @@
 
 namespace Wikibase;
 
-use ValueFormatters\FormatterOptions;
 use Wikibase\Client\WikibaseClient;
 use Wikibase\DataModel\SimpleSiteLink;
 use Wikibase\Lib\SnakFormatter;
-use Wikibase\Lib\SnakFormatterFactory;
 
 /**
  * Handler of the {{#property}} parser function.
@@ -36,7 +34,6 @@
  * @licence GNU GPL v2+
  * @author Katie Filbert < aude.w...@gmail.com >
  * @author Jeroen De Dauw < jeroended...@gmail.com >
- * @author Daniel Kinzler
  */
 class PropertyParserFunction {
 
@@ -62,7 +59,7 @@
         * @param EntityLookup                $entityLookup
         * @param PropertyLabelResolver       $propertyLabelResolver
         * @param ParserErrorMessageFormatter $errorFormatter
-        * @param SnakFormatter               $snaksFormatter
+        * @param Lib\SnakFormatter           $snaksFormatter
         */
        public function __construct( \Language $language,
                EntityLookup $entityLookup, PropertyLabelResolver 
$propertyLabelResolver,
@@ -117,18 +114,12 @@
         * @return string - wikitext format
         */
        private function formatSnakList( $snaks ) {
-               $formattedValues = $this->formatSnaks( $snaks );
+               $languageFallbackChainFactory = 
WikibaseClient::getDefaultInstance()->getLanguageFallbackChainFactory();
+               $languageFallbackChain = 
$languageFallbackChainFactory->newFromLanguage( $this->language,
+                       LanguageFallbackChainFactory::FALLBACK_SELF | 
LanguageFallbackChainFactory::FALLBACK_VARIANTS
+               );
+               $formattedValues = $this->snaksFormatter->formatSnaks( $snaks, 
$languageFallbackChain );
                return $this->language->commaList( $formattedValues );
-       }
-
-       private function formatSnaks( $snaks ) {
-               $strings = array();
-
-               foreach ( $snaks as $snak ) {
-                       $strings[] = $this->snaksFormatter->formatSnak( $snak );
-               }
-
-               return $strings;
        }
 
        /**
@@ -200,18 +191,7 @@
 
                $entityLookup = $wikibaseClient->getStore()->getEntityLookup();
                $propertyLabelResolver = 
$wikibaseClient->getStore()->getPropertyLabelResolver();
-
-               $languageFallbackChainFactory = 
WikibaseClient::getDefaultInstance()->getLanguageFallbackChainFactory();
-               $languageFallbackChain = 
$languageFallbackChainFactory->newFromLanguage( $targetLanguage,
-                       LanguageFallbackChainFactory::FALLBACK_SELF | 
LanguageFallbackChainFactory::FALLBACK_VARIANTS
-               );
-
-               $options = new FormatterOptions( array(
-                       'languages' => $languageFallbackChain,
-                       // ...more options...
-               ) );
-
-               $formatter = $wikibaseClient->newSnakFormatter( 
SnakFormatterFactory::FORMAT_WIKI, $options );
+               $formatter = $wikibaseClient->newSnakFormatter();
 
                $instance = new self( $targetLanguage,
                        $entityLookup, $propertyLabelResolver,
diff --git 
a/client/tests/phpunit/includes/parserhooks/PropertyParserFunctionTest.php 
b/client/tests/phpunit/includes/parserhooks/PropertyParserFunctionTest.php
index 4b24dbe..0e5d6b3 100644
--- a/client/tests/phpunit/includes/parserhooks/PropertyParserFunctionTest.php
+++ b/client/tests/phpunit/includes/parserhooks/PropertyParserFunctionTest.php
@@ -8,6 +8,9 @@
 use Wikibase\DataModel\Entity\ItemId;
 use Wikibase\DataModel\Entity\PropertyId;
 use Wikibase\Item;
+use Wikibase\Lib\EntityRetrievingDataTypeLookup;
+use Wikibase\Lib\SnakFormatter;
+use Wikibase\Lib\TypedValueFormatter;
 use Wikibase\ParserErrorMessageFormatter;
 use Wikibase\Property;
 use Wikibase\PropertyParserFunction;
@@ -40,10 +43,11 @@
                $mockRepo = $this->newMockRepository();
                $mockResolver = new MockPropertyLabelResolver( 
$targetLanguage->getCode(), $mockRepo );
 
-               $formatter = $this->getMock( 'Wikibase\Lib\SnakFormatter' );
-               $formatter->expects( $this->any() )
-                       ->method( 'formatSnak' )
-                       ->will( $this->returnValue( '(a kitten)' ) );
+               $formatter = new SnakFormatter(
+                       new EntityRetrievingDataTypeLookup( $mockRepo ),
+                       new TypedValueFormatter(),
+                       $dataTypeFactory
+               );
 
                return new PropertyParserFunction(
                        $targetLanguage,
@@ -86,12 +90,12 @@
                return array(
                        array(
                                'p1337',
-                               '(a kitten), (a kitten)',
+                               'Please write tests before merging your code, 
or kittens will die',
                                'Congratulations, you just killed a kitten'
                        ),
                        array(
                                'kitten',
-                               '(a kitten), (a kitten)',
+                               'Please write tests before merging your code, 
or kittens will die',
                                'Congratulations, you just killed a kitten'
                        ),
                );

-- 
To view, visit https://gerrit.wikimedia.org/r/84526
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ibb94ebc4b6d14cf7a65abecbf06c8d28c9a1d544
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Liangent <liang...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to