Addshore has uploaded a new change for review.

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


Change subject: Add tests for MySqlSchemaSqlBuilder
......................................................................

Add tests for MySqlSchemaSqlBuilder

Change-Id: I4a81eb8bbc8f36930a69ef4f104a4b619bf36fde
---
M src/MySQL/MySqlSchemaSqlBuilder.php
A tests/phpunit/MySQL/MySqlSchemaSqlBuilderTest.php
2 files changed, 42 insertions(+), 2 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseDatabase 
refs/changes/47/87047/1

diff --git a/src/MySQL/MySqlSchemaSqlBuilder.php 
b/src/MySQL/MySqlSchemaSqlBuilder.php
index 18619a4..d8e8262 100644
--- a/src/MySQL/MySqlSchemaSqlBuilder.php
+++ b/src/MySQL/MySqlSchemaSqlBuilder.php
@@ -32,7 +32,6 @@
         * @return string
         */
        public function getRemoveFieldSql( $tableName, $fieldName ) {
-               //TODO add unittests
                return "ALTER TABLE {$tableName} DROP {$fieldName}";
        }
 
@@ -43,7 +42,6 @@
         * @return string
         */
        public function getAddFieldSql( $tableName, FieldDefinition $field ) {
-               //TODO add unittests
                return "ALTER TABLE {$tableName} ADD " . 
$this->fieldSqlBuilder->getFieldSQL( $field );
        }
 
diff --git a/tests/phpunit/MySQL/MySqlSchemaSqlBuilderTest.php 
b/tests/phpunit/MySQL/MySqlSchemaSqlBuilderTest.php
new file mode 100644
index 0000000..732f729
--- /dev/null
+++ b/tests/phpunit/MySQL/MySqlSchemaSqlBuilderTest.php
@@ -0,0 +1,42 @@
+<?php
+
+namespace Wikibase\Database\Tests\MySQL;
+
+use Wikibase\Database\MySQL\MySqlSchemaSqlBuilder;
+use Wikibase\Database\Schema\Definitions\FieldDefinition;
+
+/**
+ * @covers Wikibase\Database\MySQL\MySqlSchemaSqlBuilder
+ *
+ * @group Wikibase
+ * @group WikibaseDatabase
+ * @group Database
+ *
+ * @licence GNU GPL v2+
+ * @author Adam Shorland
+ */
+class MySqlSchemaSqlBuilderTest extends \PHPUnit_Framework_TestCase {
+
+       private function newInstance() {
+               $mockEscaper = $this->getMock( 'Wikibase\Database\Escaper' );
+               $mockEscaper->expects( $this->any() )
+                       ->method( 'getEscapedValue' )
+                       ->will( $this->returnArgument(0) );
+
+               return new MySqlSchemaSqlBuilder( $mockEscaper );
+       }
+
+       public function testGetRemoveFieldSql(){
+               $instance = $this->newInstance();
+               $sql = $instance->getRemoveFieldSql( 'tableName', 'fieldName' );
+               $this->assertEquals( "ALTER TABLE tableName DROP fieldName", 
$sql );
+       }
+
+       public function testGetAddFieldSql(){
+               $instance = $this->newInstance();
+               $field = new FieldDefinition( 'intField', 
FieldDefinition::TYPE_INTEGER, FieldDefinition::NOT_NULL, 42 );
+               $sql = $instance->getAddFieldSql( 'tableName', $field );
+               $this->assertEquals( 'ALTER TABLE tableName ADD intField INT 
DEFAULT 42 NOT NULL', $sql );
+       }
+
+}
\ No newline at end of file

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4a81eb8bbc8f36930a69ef4f104a4b619bf36fde
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseDatabase
Gerrit-Branch: master
Gerrit-Owner: Addshore <[email protected]>

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

Reply via email to