Jeroen De Dauw has uploaded a new change for review.

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


Change subject: Add extra escpaing tests to SQLiteFieldSqlBuilderTest
......................................................................

Add extra escpaing tests to SQLiteFieldSqlBuilderTest

Change-Id: Ib914f6053354d4f8e967f10bb518eb276308ff08
---
M tests/phpunit/SQLite/SQLiteFieldSqlBuilderTest.php
1 file changed, 27 insertions(+), 15 deletions(-)


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

diff --git a/tests/phpunit/SQLite/SQLiteFieldSqlBuilderTest.php 
b/tests/phpunit/SQLite/SQLiteFieldSqlBuilderTest.php
index 48eb384..bc74505 100644
--- a/tests/phpunit/SQLite/SQLiteFieldSqlBuilderTest.php
+++ b/tests/phpunit/SQLite/SQLiteFieldSqlBuilderTest.php
@@ -16,20 +16,19 @@
  */
 class SQLiteFieldSqlBuilderTest 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 SQLiteFieldSqlBuilder( $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 SQLiteFieldSqlBuilder( $mockEscaper );
 
                $actualSQL = $sqlBuilder->getFieldSQL( $field );
 
@@ -40,18 +39,31 @@
                $argLists = array();
 
                $argLists[] = array(
-                       new FieldDefinition( 'fieldName', 'bool' ),
+                       new FieldDefinition(
+                               'fieldName',
+                               FieldDefinition::TYPE_BOOLEAN
+                       ),
                        'fieldName TINYINT NULL'
                );
 
                $argLists[] = array(
-                       new FieldDefinition( 'fieldName', 'bool', false, '1' ),
-                       'fieldName TINYINT 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/87571
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ib914f6053354d4f8e967f10bb518eb276308ff08
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

Reply via email to