Browse Source

Fixed test break.

tags/2.0.0-rc
Qiang Xue 11 years ago
parent
commit
70b57766b1
  1. 2
      framework/db/QueryBuilder.php
  2. 10
      tests/unit/framework/db/QueryBuilderTest.php
  3. 20
      tests/unit/framework/db/cubrid/CubridQueryBuilderTest.php
  4. 20
      tests/unit/framework/db/pgsql/PostgreSQLQueryBuilderTest.php

2
framework/db/QueryBuilder.php

@ -589,7 +589,7 @@ class QueryBuilder extends \yii\base\Object
{ {
if (isset($this->typeMap[$type])) { if (isset($this->typeMap[$type])) {
return $this->typeMap[$type]; return $this->typeMap[$type];
} elseif (preg_match('/^(\w+)\((.+?)\)(.*)$/', $type, $matches)) { } elseif (preg_match('/^(\w+)\(([\d,]+?)\)(.*)$/', $type, $matches)) {
if (isset($this->typeMap[$matches[1]])) { if (isset($this->typeMap[$matches[1]])) {
$ptype = $this->typeMap[$matches[1]]; $ptype = $this->typeMap[$matches[1]];
if (strpos($ptype, '(') !== false) { if (strpos($ptype, '(') !== false) {

10
tests/unit/framework/db/QueryBuilderTest.php

@ -55,11 +55,11 @@ class QueryBuilderTest extends DatabaseTestCase
[Schema::TYPE_STRING . '(32) CHECK (value LIKE "test%")', 'varchar(32) CHECK (value LIKE "test%")'], [Schema::TYPE_STRING . '(32) CHECK (value LIKE "test%")', 'varchar(32) CHECK (value LIKE "test%")'],
[Schema::TYPE_STRING . ' NOT NULL', 'varchar(255) NOT NULL'], [Schema::TYPE_STRING . ' NOT NULL', 'varchar(255) NOT NULL'],
[Schema::TYPE_TEXT, 'text'], [Schema::TYPE_TEXT, 'text'],
[Schema::TYPE_TEXT . '(255)', 'text'], [Schema::TYPE_TEXT . '(255)', 'text(255)'],
[Schema::TYPE_TEXT . ' CHECK (value LIKE "test%")', 'text CHECK (value LIKE "test%")'], [Schema::TYPE_TEXT . ' CHECK (value LIKE "test%")', 'text CHECK (value LIKE "test%")'],
[Schema::TYPE_TEXT . '(255) CHECK (value LIKE "test%")', 'text CHECK (value LIKE "test%")'], [Schema::TYPE_TEXT . '(255) CHECK (value LIKE "test%")', 'text(255) CHECK (value LIKE "test%")'],
[Schema::TYPE_TEXT . ' NOT NULL', 'text NOT NULL'], [Schema::TYPE_TEXT . ' NOT NULL', 'text NOT NULL'],
[Schema::TYPE_TEXT . '(255) NOT NULL', 'text NOT NULL'], [Schema::TYPE_TEXT . '(255) NOT NULL', 'text(255) NOT NULL'],
[Schema::TYPE_SMALLINT, 'smallint(6)'], [Schema::TYPE_SMALLINT, 'smallint(6)'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint(8)'], [Schema::TYPE_SMALLINT . '(8)', 'smallint(8)'],
[Schema::TYPE_INTEGER, 'int(11)'], [Schema::TYPE_INTEGER, 'int(11)'],
@ -73,9 +73,9 @@ class QueryBuilderTest extends DatabaseTestCase
[Schema::TYPE_BIGINT . '(8) CHECK (value > 5)', 'bigint(8) CHECK (value > 5)'], [Schema::TYPE_BIGINT . '(8) CHECK (value > 5)', 'bigint(8) CHECK (value > 5)'],
[Schema::TYPE_BIGINT . ' NOT NULL', 'bigint(20) NOT NULL'], [Schema::TYPE_BIGINT . ' NOT NULL', 'bigint(20) NOT NULL'],
[Schema::TYPE_FLOAT, 'float'], [Schema::TYPE_FLOAT, 'float'],
[Schema::TYPE_FLOAT . '(16,5)', 'float'], [Schema::TYPE_FLOAT . '(16,5)', 'float(16,5)'],
[Schema::TYPE_FLOAT . ' CHECK (value > 5.6)', 'float CHECK (value > 5.6)'], [Schema::TYPE_FLOAT . ' CHECK (value > 5.6)', 'float CHECK (value > 5.6)'],
[Schema::TYPE_FLOAT . '(16,5) CHECK (value > 5.6)', 'float CHECK (value > 5.6)'], [Schema::TYPE_FLOAT . '(16,5) CHECK (value > 5.6)', 'float(16,5) CHECK (value > 5.6)'],
[Schema::TYPE_FLOAT . ' NOT NULL', 'float NOT NULL'], [Schema::TYPE_FLOAT . ' NOT NULL', 'float NOT NULL'],
[Schema::TYPE_DECIMAL, 'decimal(10,0)'], [Schema::TYPE_DECIMAL, 'decimal(10,0)'],
[Schema::TYPE_DECIMAL . '(12,4)', 'decimal(12,4)'], [Schema::TYPE_DECIMAL . '(12,4)', 'decimal(12,4)'],

20
tests/unit/framework/db/cubrid/CubridQueryBuilderTest.php

@ -21,31 +21,31 @@ class CubridQueryBuilderTest extends QueryBuilderTest
{ {
return [ return [
[Schema::TYPE_PK, 'int NOT NULL AUTO_INCREMENT PRIMARY KEY'], [Schema::TYPE_PK, 'int NOT NULL AUTO_INCREMENT PRIMARY KEY'],
[Schema::TYPE_PK . '(8)', 'int NOT NULL AUTO_INCREMENT PRIMARY KEY'], // [Schema::TYPE_PK . '(8)', 'int NOT NULL AUTO_INCREMENT PRIMARY KEY'],
[Schema::TYPE_PK . ' CHECK (value > 5)', 'int NOT NULL AUTO_INCREMENT PRIMARY KEY CHECK (value > 5)'], [Schema::TYPE_PK . ' CHECK (value > 5)', 'int NOT NULL AUTO_INCREMENT PRIMARY KEY CHECK (value > 5)'],
[Schema::TYPE_PK . '(8) CHECK (value > 5)', 'int NOT NULL AUTO_INCREMENT PRIMARY KEY CHECK (value > 5)'], // [Schema::TYPE_PK . '(8) CHECK (value > 5)', 'int NOT NULL AUTO_INCREMENT PRIMARY KEY CHECK (value > 5)'],
[Schema::TYPE_STRING, 'varchar(255)'], [Schema::TYPE_STRING, 'varchar(255)'],
[Schema::TYPE_STRING . '(32)', 'varchar(32)'], [Schema::TYPE_STRING . '(32)', 'varchar(32)'],
[Schema::TYPE_STRING . ' CHECK (value LIKE "test%")', 'varchar(255) CHECK (value LIKE "test%")'], [Schema::TYPE_STRING . ' CHECK (value LIKE "test%")', 'varchar(255) CHECK (value LIKE "test%")'],
[Schema::TYPE_STRING . '(32) CHECK (value LIKE "test%")', 'varchar(32) CHECK (value LIKE "test%")'], [Schema::TYPE_STRING . '(32) CHECK (value LIKE "test%")', 'varchar(32) CHECK (value LIKE "test%")'],
[Schema::TYPE_STRING . ' NOT NULL', 'varchar(255) NOT NULL'], [Schema::TYPE_STRING . ' NOT NULL', 'varchar(255) NOT NULL'],
[Schema::TYPE_TEXT, 'varchar'], [Schema::TYPE_TEXT, 'varchar'],
[Schema::TYPE_TEXT . '(255)', 'varchar'], [Schema::TYPE_TEXT . '(255)', 'varchar(255)'],
[Schema::TYPE_TEXT . ' CHECK (value LIKE "test%")', 'varchar CHECK (value LIKE "test%")'], [Schema::TYPE_TEXT . ' CHECK (value LIKE "test%")', 'varchar CHECK (value LIKE "test%")'],
[Schema::TYPE_TEXT . '(255) CHECK (value LIKE "test%")', 'varchar CHECK (value LIKE "test%")'], [Schema::TYPE_TEXT . '(255) CHECK (value LIKE "test%")', 'varchar(255) CHECK (value LIKE "test%")'],
[Schema::TYPE_TEXT . ' NOT NULL', 'varchar NOT NULL'], [Schema::TYPE_TEXT . ' NOT NULL', 'varchar NOT NULL'],
[Schema::TYPE_TEXT . '(255) NOT NULL', 'varchar NOT NULL'], [Schema::TYPE_TEXT . '(255) NOT NULL', 'varchar(255) NOT NULL'],
[Schema::TYPE_SMALLINT, 'smallint'], [Schema::TYPE_SMALLINT, 'smallint'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint'], [Schema::TYPE_SMALLINT . '(8)', 'smallint(8)'],
[Schema::TYPE_INTEGER, 'int'], [Schema::TYPE_INTEGER, 'int'],
[Schema::TYPE_INTEGER . '(8)', 'int'], [Schema::TYPE_INTEGER . '(8)', 'int(8)'],
[Schema::TYPE_INTEGER . ' CHECK (value > 5)', 'int CHECK (value > 5)'], [Schema::TYPE_INTEGER . ' CHECK (value > 5)', 'int CHECK (value > 5)'],
[Schema::TYPE_INTEGER . '(8) CHECK (value > 5)', 'int CHECK (value > 5)'], [Schema::TYPE_INTEGER . '(8) CHECK (value > 5)', 'int(8) CHECK (value > 5)'],
[Schema::TYPE_INTEGER . ' NOT NULL', 'int NOT NULL'], [Schema::TYPE_INTEGER . ' NOT NULL', 'int NOT NULL'],
[Schema::TYPE_BIGINT, 'bigint'], [Schema::TYPE_BIGINT, 'bigint'],
[Schema::TYPE_BIGINT . '(8)', 'bigint'], [Schema::TYPE_BIGINT . '(8)', 'bigint(8)'],
[Schema::TYPE_BIGINT . ' CHECK (value > 5)', 'bigint CHECK (value > 5)'], [Schema::TYPE_BIGINT . ' CHECK (value > 5)', 'bigint CHECK (value > 5)'],
[Schema::TYPE_BIGINT . '(8) CHECK (value > 5)', 'bigint CHECK (value > 5)'], [Schema::TYPE_BIGINT . '(8) CHECK (value > 5)', 'bigint(8) CHECK (value > 5)'],
[Schema::TYPE_BIGINT . ' NOT NULL', 'bigint NOT NULL'], [Schema::TYPE_BIGINT . ' NOT NULL', 'bigint NOT NULL'],
[Schema::TYPE_FLOAT, 'float(7)'], [Schema::TYPE_FLOAT, 'float(7)'],
[Schema::TYPE_FLOAT . '(16)', 'float(16)'], [Schema::TYPE_FLOAT . '(16)', 'float(16)'],

20
tests/unit/framework/db/pgsql/PostgreSQLQueryBuilderTest.php

@ -17,35 +17,35 @@ class PostgreSQLQueryBuilderTest extends QueryBuilderTest
{ {
return [ return [
[Schema::TYPE_PK, 'serial NOT NULL PRIMARY KEY'], [Schema::TYPE_PK, 'serial NOT NULL PRIMARY KEY'],
[Schema::TYPE_PK . '(8)', 'serial NOT NULL PRIMARY KEY'], // [Schema::TYPE_PK . '(8)', 'serial NOT NULL PRIMARY KEY'],
[Schema::TYPE_PK . ' CHECK (value > 5)', 'serial NOT NULL PRIMARY KEY CHECK (value > 5)'], [Schema::TYPE_PK . ' CHECK (value > 5)', 'serial NOT NULL PRIMARY KEY CHECK (value > 5)'],
[Schema::TYPE_PK . '(8) CHECK (value > 5)', 'serial NOT NULL PRIMARY KEY CHECK (value > 5)'], // [Schema::TYPE_PK . '(8) CHECK (value > 5)', 'serial NOT NULL PRIMARY KEY CHECK (value > 5)'],
[Schema::TYPE_STRING, 'varchar(255)'], [Schema::TYPE_STRING, 'varchar(255)'],
[Schema::TYPE_STRING . '(32)', 'varchar(32)'], [Schema::TYPE_STRING . '(32)', 'varchar(32)'],
[Schema::TYPE_STRING . ' CHECK (value LIKE "test%")', 'varchar(255) CHECK (value LIKE "test%")'], [Schema::TYPE_STRING . ' CHECK (value LIKE "test%")', 'varchar(255) CHECK (value LIKE "test%")'],
[Schema::TYPE_STRING . '(32) CHECK (value LIKE "test%")', 'varchar(32) CHECK (value LIKE "test%")'], [Schema::TYPE_STRING . '(32) CHECK (value LIKE "test%")', 'varchar(32) CHECK (value LIKE "test%")'],
[Schema::TYPE_STRING . ' NOT NULL', 'varchar(255) NOT NULL'], [Schema::TYPE_STRING . ' NOT NULL', 'varchar(255) NOT NULL'],
[Schema::TYPE_TEXT, 'text'], [Schema::TYPE_TEXT, 'text'],
[Schema::TYPE_TEXT . '(255)', 'text'], [Schema::TYPE_TEXT . '(255)', 'text(255)'],
[Schema::TYPE_TEXT . ' CHECK (value LIKE "test%")', 'text CHECK (value LIKE "test%")'], [Schema::TYPE_TEXT . ' CHECK (value LIKE "test%")', 'text CHECK (value LIKE "test%")'],
[Schema::TYPE_TEXT . '(255) CHECK (value LIKE "test%")', 'text CHECK (value LIKE "test%")'], [Schema::TYPE_TEXT . '(255) CHECK (value LIKE "test%")', 'text(255) CHECK (value LIKE "test%")'],
[Schema::TYPE_TEXT . ' NOT NULL', 'text NOT NULL'], [Schema::TYPE_TEXT . ' NOT NULL', 'text NOT NULL'],
[Schema::TYPE_TEXT . '(255) NOT NULL', 'text NOT NULL'], [Schema::TYPE_TEXT . '(255) NOT NULL', 'text(255) NOT NULL'],
[Schema::TYPE_SMALLINT, 'smallint'], [Schema::TYPE_SMALLINT, 'smallint'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint'], [Schema::TYPE_SMALLINT . '(8)', 'smallint'],
[Schema::TYPE_INTEGER, 'integer'], [Schema::TYPE_INTEGER, 'integer'],
[Schema::TYPE_INTEGER . '(8)', 'integer'], [Schema::TYPE_INTEGER . '(8)', 'integer(8)'],
[Schema::TYPE_INTEGER . ' CHECK (value > 5)', 'integer CHECK (value > 5)'], [Schema::TYPE_INTEGER . ' CHECK (value > 5)', 'integer CHECK (value > 5)'],
[Schema::TYPE_INTEGER . '(8) CHECK (value > 5)', 'integer CHECK (value > 5)'], [Schema::TYPE_INTEGER . '(8) CHECK (value > 5)', 'integer(8) CHECK (value > 5)'],
[Schema::TYPE_INTEGER . ' NOT NULL', 'integer NOT NULL'], [Schema::TYPE_INTEGER . ' NOT NULL', 'integer NOT NULL'],
[Schema::TYPE_BIGINT, 'bigint'], [Schema::TYPE_BIGINT, 'bigint'],
[Schema::TYPE_BIGINT . '(8)', 'bigint'], [Schema::TYPE_BIGINT . '(8)', 'bigint(8)'],
[Schema::TYPE_BIGINT . ' CHECK (value > 5)', 'bigint CHECK (value > 5)'], [Schema::TYPE_BIGINT . ' CHECK (value > 5)', 'bigint CHECK (value > 5)'],
[Schema::TYPE_BIGINT . '(8) CHECK (value > 5)', 'bigint CHECK (value > 5)'], [Schema::TYPE_BIGINT . '(8) CHECK (value > 5)', 'bigint(8) CHECK (value > 5)'],
[Schema::TYPE_BIGINT . ' NOT NULL', 'bigint NOT NULL'], [Schema::TYPE_BIGINT . ' NOT NULL', 'bigint NOT NULL'],
[Schema::TYPE_FLOAT, 'double precision'], [Schema::TYPE_FLOAT, 'double precision'],
[Schema::TYPE_FLOAT . ' CHECK (value > 5.6)', 'double precision CHECK (value > 5.6)'], [Schema::TYPE_FLOAT . ' CHECK (value > 5.6)', 'double precision CHECK (value > 5.6)'],
[Schema::TYPE_FLOAT . '(16,5) CHECK (value > 5.6)', 'double precision CHECK (value > 5.6)'], [Schema::TYPE_FLOAT . '(16,5) CHECK (value > 5.6)', 'double(16,5) precision CHECK (value > 5.6)'],
[Schema::TYPE_FLOAT . ' NOT NULL', 'double precision NOT NULL'], [Schema::TYPE_FLOAT . ' NOT NULL', 'double precision NOT NULL'],
[Schema::TYPE_DECIMAL, 'numeric(10,0)'], [Schema::TYPE_DECIMAL, 'numeric(10,0)'],
[Schema::TYPE_DECIMAL . '(12,4)', 'numeric(12,4)'], [Schema::TYPE_DECIMAL . '(12,4)', 'numeric(12,4)'],

Loading…
Cancel
Save