jenkins-bot has submitted this change and it was merged.

Change subject: Added basic test for SimpleTableSchemaUpdater
......................................................................


Added basic test for SimpleTableSchemaUpdater

Change-Id: Iff3b3cf6c42d1adf73d33960236744f63ae741e9
---
A tests/phpunit/Schema/SimpleTableSchemaUpdaterTest.php
1 file changed, 93 insertions(+), 0 deletions(-)

Approvals:
  Addshore: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/tests/phpunit/Schema/SimpleTableSchemaUpdaterTest.php 
b/tests/phpunit/Schema/SimpleTableSchemaUpdaterTest.php
new file mode 100644
index 0000000..8f61985
--- /dev/null
+++ b/tests/phpunit/Schema/SimpleTableSchemaUpdaterTest.php
@@ -0,0 +1,93 @@
+<?php
+
+namespace Wikibase\Database\Tests\Schema;
+
+use Wikibase\Database\Schema\Definitions\FieldDefinition;
+use Wikibase\Database\Schema\Definitions\IndexDefinition;
+use Wikibase\Database\Schema\Definitions\TableDefinition;
+use Wikibase\Database\Schema\SimpleTableSchemaUpdater;
+
+/**
+ * @covers Wikibase\Database\Schema\SimpleTableSchemaUpdater
+ *
+ * @group Wikibase
+ * @group WikibaseDatabase
+ *
+ * @licence GNU GPL v2+
+ * @author Jeroen De Dauw < [email protected] >
+ */
+class SimpleTableSchemaUpdaterTest extends \PHPUnit_Framework_TestCase {
+
+       public function testCanConstruct() {
+               new SimpleTableSchemaUpdater( $this->getMock( 
'Wikibase\Database\Schema\SchemaModifier' ) );
+               $this->assertTrue( true );
+       }
+
+       /**
+        * @dataProvider tableDefinitionProvider
+        */
+       public function testNoUpdatesCausedBySameDefinition( TableDefinition 
$tableDefinition ) {
+               $schema = $this->getMock( 
'Wikibase\Database\Schema\SchemaModifier' );
+
+               $schema->expects( $this->never() )
+                       ->method( 'removeField' );
+
+               $schema->expects( $this->never() )
+                       ->method( 'addField' );
+
+               $updater = new SimpleTableSchemaUpdater( $schema );
+
+               $updater->updateTable( $tableDefinition, $tableDefinition );
+       }
+
+       public function tableDefinitionProvider() {
+               $definitions = array();
+
+               $definitions[] = new TableDefinition(
+                       'foo',
+                       array(
+                               new FieldDefinition(
+                                       'field',
+                                       FieldDefinition::TYPE_BOOLEAN
+                               )
+                       )
+               );
+
+               $definitions[] = new TableDefinition(
+                       'foo',
+                       array(
+                               new FieldDefinition(
+                                       'bool',
+                                       FieldDefinition::TYPE_BOOLEAN
+                               ),
+                               new FieldDefinition(
+                                       'int',
+                                       FieldDefinition::TYPE_INTEGER
+                               ),
+                               new FieldDefinition(
+                                       'text',
+                                       FieldDefinition::TYPE_TEXT
+                               )
+                       ),
+                       array(
+                               new IndexDefinition(
+                                       'some_index',
+                                       array(
+                                               'int' => 0,
+                                               'text' => 10,
+                                       )
+                               ),
+                               new IndexDefinition(
+                                       'other_index',
+                                       array(
+                                               'text' => 0,
+                                       ),
+                                       IndexDefinition::TYPE_UNIQUE
+                               )
+                       )
+               );
+
+               return array_map( function( $definition ) { return array( 
$definition ); }, $definitions );
+       }
+
+}

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Iff3b3cf6c42d1adf73d33960236744f63ae741e9
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/extensions/WikibaseDatabase
Gerrit-Branch: master
Gerrit-Owner: Jeroen De Dauw <[email protected]>
Gerrit-Reviewer: Addshore <[email protected]>
Gerrit-Reviewer: Daniel Kinzler <[email protected]>
Gerrit-Reviewer: Daniel Werner <[email protected]>
Gerrit-Reviewer: Tobias Gritschacher <[email protected]>
Gerrit-Reviewer: jenkins-bot

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

Reply via email to