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])) {
return $this->typeMap[$type];
} elseif (preg_match('/^(\w+)\((.+?)\)(.*)$/', $type, $matches)) {
} elseif (preg_match('/^(\w+)\(([\d,]+?)\)(.*)$/', $type, $matches)) {
if (isset($this->typeMap[$matches[1]])) {
$ptype = $this->typeMap[$matches[1]];
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 . ' NOT NULL', 'varchar(255) NOT NULL'],
[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 . '(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 . '(255) NOT NULL', 'text NOT NULL'],
[Schema::TYPE_TEXT . '(255) NOT NULL', 'text(255) NOT NULL'],
[Schema::TYPE_SMALLINT, 'smallint(6)'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint(8)'],
[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 . ' NOT NULL', 'bigint(20) NOT NULL'],
[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 . '(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_DECIMAL, 'decimal(10,0)'],
[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 [
[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 . '(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 . '(32)', 'varchar(32)'],
[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 . ' NOT NULL', 'varchar(255) NOT NULL'],
[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 . '(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 . '(255) NOT NULL', 'varchar NOT NULL'],
[Schema::TYPE_TEXT . '(255) NOT NULL', 'varchar(255) NOT NULL'],
[Schema::TYPE_SMALLINT, 'smallint'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint(8)'],
[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 . '(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_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 . '(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_FLOAT, 'float(7)'],
[Schema::TYPE_FLOAT . '(16)', 'float(16)'],

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

@ -17,35 +17,35 @@ class PostgreSQLQueryBuilderTest extends QueryBuilderTest
{
return [
[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 . '(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 . '(32)', 'varchar(32)'],
[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 . ' NOT NULL', 'varchar(255) NOT NULL'],
[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 . '(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 . '(255) NOT NULL', 'text NOT NULL'],
[Schema::TYPE_TEXT . '(255) NOT NULL', 'text(255) NOT NULL'],
[Schema::TYPE_SMALLINT, 'smallint'],
[Schema::TYPE_SMALLINT . '(8)', 'smallint'],
[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 . '(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_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 . '(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_FLOAT, 'double precision'],
[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_DECIMAL, 'numeric(10,0)'],
[Schema::TYPE_DECIMAL . '(12,4)', 'numeric(12,4)'],

Loading…
Cancel
Save