jenkins-bot has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/350386 )

Change subject: Extract default configuration for tests into trait
......................................................................


Extract default configuration for tests into trait

The default values are loaded from the extension.json file.

Change-Id: I10e82cc038d20ccc133ac738ad849a1ebfd5db95
---
M tests/phpunit/Checker/TypeChecker/TypeCheckerHelperTest.php
M tests/phpunit/Checker/TypeChecker/TypeCheckerTest.php
M tests/phpunit/Checker/TypeChecker/ValueTypeCheckerTest.php
A tests/phpunit/DefaultConfig.php
M tests/phpunit/DelegatingConstraintCheckerTest.php
5 files changed, 57 insertions(+), 14 deletions(-)

Approvals:
  jenkins-bot: Verified
  Thiemo Mättig (WMDE): Looks good to me, approved



diff --git a/tests/phpunit/Checker/TypeChecker/TypeCheckerHelperTest.php 
b/tests/phpunit/Checker/TypeChecker/TypeCheckerHelperTest.php
index 7f21855..9dfd16c 100644
--- a/tests/phpunit/Checker/TypeChecker/TypeCheckerHelperTest.php
+++ b/tests/phpunit/Checker/TypeChecker/TypeCheckerHelperTest.php
@@ -2,7 +2,6 @@
 
 namespace WikibaseQuality\ConstraintReport\Test\TypeChecker;
 
-use HashConfig;
 use PHPUnit_Framework_TestCase;
 use Wikibase\DataModel\Statement\Statement;
 use Wikibase\DataModel\Snak\PropertyValueSnak;
@@ -11,6 +10,7 @@
 use Wikibase\DataModel\Entity\PropertyId;
 use Wikibase\DataModel\Statement\StatementList;
 use WikibaseQuality\ConstraintReport\ConstraintCheck\Helper\TypeCheckerHelper;
+use WikibaseQuality\ConstraintReport\Tests\DefaultConfig;
 use WikibaseQuality\Tests\Helper\JsonFileEntityLookup;
 
 /**
@@ -23,6 +23,8 @@
  */
 class TypeCheckerHelperTest extends PHPUnit_Framework_TestCase {
 
+       use DefaultConfig;
+
        /**
         * @var TypeCheckerHelper
         */
@@ -32,7 +34,7 @@
                parent::setUp();
                $this->helper = new TypeCheckerHelper(
                        new JsonFileEntityLookup( __DIR__ ),
-                       new HashConfig( [ 'WBQualityConstraintsInstanceOfId' => 
'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] )
+                       $this->getDefaultConfig()
                );
        }
 
diff --git a/tests/phpunit/Checker/TypeChecker/TypeCheckerTest.php 
b/tests/phpunit/Checker/TypeChecker/TypeCheckerTest.php
index fd844cb..c632859 100644
--- a/tests/phpunit/Checker/TypeChecker/TypeCheckerTest.php
+++ b/tests/phpunit/Checker/TypeChecker/TypeCheckerTest.php
@@ -2,7 +2,6 @@
 
 namespace WikibaseQuality\ConstraintReport\Test\TypeChecker;
 
-use HashConfig;
 use Wikibase\DataModel\Statement\Statement;
 use Wikibase\DataModel\Snak\PropertyValueSnak;
 use Wikibase\DataModel\Entity\EntityIdValue;
@@ -12,6 +11,7 @@
 use WikibaseQuality\ConstraintReport\ConstraintCheck\Checker\TypeChecker;
 use 
WikibaseQuality\ConstraintReport\ConstraintCheck\Helper\ConstraintParameterParser;
 use WikibaseQuality\ConstraintReport\ConstraintCheck\Helper\TypeCheckerHelper;
+use WikibaseQuality\ConstraintReport\Tests\DefaultConfig;
 use WikibaseQuality\Tests\Helper\JsonFileEntityLookup;
 
 /**
@@ -26,6 +26,8 @@
  * @license GNU GPL v2+
  */
 class TypeCheckerTest extends \MediaWikiTestCase {
+
+       use DefaultConfig;
 
        /**
         * @var JsonFileEntityLookup
@@ -45,9 +47,11 @@
        protected function setUp() {
                parent::setUp();
                $this->lookup = new JsonFileEntityLookup( __DIR__ );
-               $config = new HashConfig( [ 'WBQualityConstraintsInstanceOfId' 
=> 'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] );
                $this->checker = new TypeChecker(
-                       $this->lookup, new ConstraintParameterParser(), new 
TypeCheckerHelper( $this->lookup, $config ), $config
+                       $this->lookup,
+                       new ConstraintParameterParser(),
+                       new TypeCheckerHelper( $this->lookup, 
$this->getDefaultConfig() ),
+                       $this->getDefaultConfig()
                );
                $this->typeStatement = new Statement( new PropertyValueSnak( 
new PropertyId( 'P1' ), new EntityIdValue( new ItemId( 'Q42' ) ) ) );
        }
diff --git a/tests/phpunit/Checker/TypeChecker/ValueTypeCheckerTest.php 
b/tests/phpunit/Checker/TypeChecker/ValueTypeCheckerTest.php
index d5d3f62..58e3034 100644
--- a/tests/phpunit/Checker/TypeChecker/ValueTypeCheckerTest.php
+++ b/tests/phpunit/Checker/TypeChecker/ValueTypeCheckerTest.php
@@ -2,7 +2,6 @@
 
 namespace WikibaseQuality\ConstraintReport\Test\TypeChecker;
 
-use HashConfig;
 use Wikibase\DataModel\Entity\EntityDocument;
 use Wikibase\DataModel\Statement\Statement;
 use Wikibase\DataModel\Snak\PropertyValueSnak;
@@ -16,6 +15,7 @@
 use WikibaseQuality\ConstraintReport\ConstraintCheck\Checker\ValueTypeChecker;
 use 
WikibaseQuality\ConstraintReport\ConstraintCheck\Helper\ConstraintParameterParser;
 use WikibaseQuality\ConstraintReport\ConstraintCheck\Helper\TypeCheckerHelper;
+use WikibaseQuality\ConstraintReport\Tests\DefaultConfig;
 use WikibaseQuality\Tests\Helper\JsonFileEntityLookup;
 
 /**
@@ -30,6 +30,8 @@
  * @license GNU GPL v2+
  */
 class ValueTypeCheckerTest extends \MediaWikiTestCase {
+
+       use DefaultConfig;
 
        /**
         * @var JsonFileEntityLookup
@@ -49,9 +51,11 @@
        protected function setUp() {
                parent::setUp();
                $this->lookup = new JsonFileEntityLookup( __DIR__ );
-               $config = new HashConfig( [ 'WBQualityConstraintsInstanceOfId' 
=> 'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] );
                $this->checker = new ValueTypeChecker(
-                       $this->lookup, new ConstraintParameterParser(), new 
TypeCheckerHelper( $this->lookup, $config ), $config
+                       $this->lookup,
+                       new ConstraintParameterParser(),
+                       new TypeCheckerHelper( $this->lookup, 
$this->getDefaultConfig() ),
+                       $this->getDefaultConfig()
                );
                $this->valueTypePropertyId = new PropertyId( 'P1234' );
        }
diff --git a/tests/phpunit/DefaultConfig.php b/tests/phpunit/DefaultConfig.php
new file mode 100644
index 0000000..8bb7ce1
--- /dev/null
+++ b/tests/phpunit/DefaultConfig.php
@@ -0,0 +1,32 @@
+<?php
+
+namespace WikibaseQuality\ConstraintReport\Tests;
+
+use HashConfig;
+
+/**
+ * @author Lucas Werkmeister
+ * @license GNU GPL v2+
+ */
+trait DefaultConfig {
+
+       /**
+        * @var HashConfig
+        */
+       private $defaultConfig;
+
+       public function getDefaultConfig() {
+               if ( $this->defaultConfig === null ) {
+                       $this->defaultConfig = new HashConfig();
+                       $extensionJsonFile = __DIR__ . '/../../extension.json';
+                       $extensionJsonText = file_get_contents( 
$extensionJsonFile );
+                       $extensionJson = json_decode( $extensionJsonText, /* 
assoc = */ true );
+                       foreach ( $extensionJson['config'] as $key => $value ) {
+                               $this->defaultConfig->set( $key, 
$value['value'] );
+                       }
+               }
+
+               return $this->defaultConfig;
+       }
+
+}
diff --git a/tests/phpunit/DelegatingConstraintCheckerTest.php 
b/tests/phpunit/DelegatingConstraintCheckerTest.php
index 0711340..8901eea 100644
--- a/tests/phpunit/DelegatingConstraintCheckerTest.php
+++ b/tests/phpunit/DelegatingConstraintCheckerTest.php
@@ -2,12 +2,12 @@
 
 namespace WikibaseQuality\ConstraintReport\Test\ConstraintChecker;
 
-use HashConfig;
 use Wikibase\DataModel\Entity\ItemId;
 use Wikibase\DataModel\Entity\ItemIdParser;
 use Wikibase\DataModel\Services\Statement\StatementGuidParser;
 use 
WikibaseQuality\ConstraintReport\ConstraintCheck\DelegatingConstraintChecker;
 use WikibaseQuality\ConstraintReport\ConstraintReportFactory;
+use WikibaseQuality\ConstraintReport\Tests\DefaultConfig;
 use WikibaseQuality\Tests\Helper\JsonFileEntityLookup;
 
 /**
@@ -42,6 +42,8 @@
  */
 class DelegatingConstraintCheckerTest extends \MediaWikiTestCase {
 
+       use DefaultConfig;
+
        /**
         * @var DelegatingConstraintChecker
         */
@@ -61,11 +63,10 @@
                parent::setUp();
                $this->lookup = $this->createEntityLookup();
                $this->statementGuidParser = new StatementGuidParser( new 
ItemIdParser() );
-               $config = new HashConfig( [ 'WBQualityConstraintsInstanceOfId' 
=> 'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] );
                $factory = new ConstraintReportFactory(
                        $this->lookup,
                        $this->statementGuidParser,
-                       $config
+                       $this->getDefaultConfig()
                );
                $this->constraintChecker = $factory->getConstraintChecker();
 
@@ -293,7 +294,7 @@
                $factory = new ConstraintReportFactory(
                        $this->createEntityLookup(),
                        $this->statementGuidParser,
-                       new HashConfig( [ 'WBQualityConstraintsInstanceOfId' => 
'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] )
+                       $this->getDefaultConfig()
                );
                $constraintChecker = $factory->getConstraintChecker();
 
@@ -307,7 +308,7 @@
                $factory = new ConstraintReportFactory(
                        $this->createEntityLookup(),
                        $this->statementGuidParser,
-                       new HashConfig( [ 'WBQualityConstraintsInstanceOfId' => 
'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] )
+                       $this->getDefaultConfig()
                );
                $constraintChecker = $factory->getConstraintChecker();
 
@@ -321,7 +322,7 @@
                $factory = new ConstraintReportFactory(
                        $this->createEntityLookup(),
                        $this->statementGuidParser,
-                       new HashConfig( [ 'WBQualityConstraintsInstanceOfId' => 
'P31', 'WBQualityConstraintsSubclassOfId' => 'P279' ] )
+                       $this->getDefaultConfig()
                );
                $constraintChecker = $factory->getConstraintChecker();
 

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

Gerrit-MessageType: merged
Gerrit-Change-Id: I10e82cc038d20ccc133ac738ad849a1ebfd5db95
Gerrit-PatchSet: 2
Gerrit-Project: mediawiki/extensions/WikibaseQualityConstraints
Gerrit-Branch: master
Gerrit-Owner: Lucas Werkmeister (WMDE) <[email protected]>
Gerrit-Reviewer: Lucas Werkmeister (WMDE) <[email protected]>
Gerrit-Reviewer: Thiemo Mättig (WMDE) <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to