Jeroen De Dauw has submitted this change and it was merged.
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(-)
Approvals:
Jeroen De Dauw: Looks good to me, approved
jenkins-bot: Verified
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: merged
Gerrit-Change-Id: I4a81eb8bbc8f36930a69ef4f104a4b619bf36fde
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseDatabase
Gerrit-Branch: master
Gerrit-Owner: Addshore <[email protected]>
Gerrit-Reviewer: Jeroen De Dauw <[email protected]>
Gerrit-Reviewer: jenkins-bot
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits