Jeroen De Dauw has uploaded a new change for review.
https://gerrit.wikimedia.org/r/87572
Change subject: Add extra escpaing tests to MySQLFieldSqlBuilderTest
......................................................................
Add extra escpaing tests to MySQLFieldSqlBuilderTest
Change-Id: I5c8b717f0bec2e26e91cc9808bb497818d133c5a
---
M tests/phpunit/MySQL/MySQLFieldSqlBuilderTest.php
1 file changed, 27 insertions(+), 15 deletions(-)
git pull
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseDatabase
refs/changes/72/87572/1
diff --git a/tests/phpunit/MySQL/MySQLFieldSqlBuilderTest.php
b/tests/phpunit/MySQL/MySQLFieldSqlBuilderTest.php
index 3c90e2f..97b57e7 100644
--- a/tests/phpunit/MySQL/MySQLFieldSqlBuilderTest.php
+++ b/tests/phpunit/MySQL/MySQLFieldSqlBuilderTest.php
@@ -17,20 +17,19 @@
*/
class MySQLFieldSqlBuilderTest 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 MySQLFieldSqlBuilder( $mockEscaper );
- }
-
/**
* @dataProvider fieldAndSqlProvider
*/
public function testGetCreateTableSql( FieldDefinition $field,
$expectedSQL ) {
- $sqlBuilder = $this->newInstance();
+ $mockEscaper = $this->getMock( 'Wikibase\Database\Escaper' );
+
+ $mockEscaper->expects( $this->exactly( $field->getDefault() ===
null ? 0 : 1 ) )
+ ->method( 'getEscapedValue' )
+ ->will( $this->returnCallback( function( $value ) {
+ return '|' . $value . '|';
+ } ) );
+
+ $sqlBuilder = new MySQLFieldSqlBuilder( $mockEscaper );
$actualSQL = $sqlBuilder->getFieldSQL( $field );
@@ -41,18 +40,31 @@
$argLists = array();
$argLists[] = array(
- new FieldDefinition( 'fieldName', 'bool' ),
+ new FieldDefinition(
+ 'fieldName',
+ FieldDefinition::TYPE_BOOLEAN
+ ),
'fieldName TINYINT NULL'
);
$argLists[] = array(
- new FieldDefinition( 'fieldName', 'float', false, '1' ),
- 'fieldName FLOAT DEFAULT 1 NOT NULL'
+ new FieldDefinition(
+ 'fieldName',
+ FieldDefinition::TYPE_BOOLEAN,
+ FieldDefinition::NOT_NULL,
+ '1'
+ ),
+ 'fieldName TINYINT DEFAULT |1| NOT NULL'
);
$argLists[] = array(
- new FieldDefinition( 'fieldName', 'str', false, 'foo' ),
- 'fieldName BLOB DEFAULT foo NOT NULL'
+ new FieldDefinition(
+ 'fieldName',
+ FieldDefinition::TYPE_TEXT,
+ FieldDefinition::NOT_NULL,
+ 'foo'
+ ),
+ 'fieldName BLOB DEFAULT |foo| NOT NULL'
);
return $argLists;
--
To view, visit https://gerrit.wikimedia.org/r/87572
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I5c8b717f0bec2e26e91cc9808bb497818d133c5a
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseDatabase
Gerrit-Branch: master
Gerrit-Owner: Jeroen De Dauw <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits