Commit 40fd0047 authored by Steve Müller's avatar Steve Müller

Merge pull request #725 from jsor/fix-list-table-sql-for-postgresql-with-postgis

Exclude tables with table_type of VIEW
parents e35ce048 8df73e1b
...@@ -264,7 +264,8 @@ class PostgreSqlPlatform extends AbstractPlatform ...@@ -264,7 +264,8 @@ class PostgreSqlPlatform extends AbstractPlatform
WHERE table_schema NOT LIKE 'pg_%' WHERE table_schema NOT LIKE 'pg_%'
AND table_schema != 'information_schema' AND table_schema != 'information_schema'
AND table_name != 'geometry_columns' AND table_name != 'geometry_columns'
AND table_name != 'spatial_ref_sys'"; AND table_name != 'spatial_ref_sys'
AND table_type != 'VIEW'";
} }
/** /**
......
...@@ -319,6 +319,30 @@ class PostgreSqlSchemaManagerTest extends SchemaManagerFunctionalTestCase ...@@ -319,6 +319,30 @@ class PostgreSqlSchemaManagerTest extends SchemaManagerFunctionalTestCase
$this->assertFalse($comparator->diffTable($offlineTable, $onlineTable)); $this->assertFalse($comparator->diffTable($offlineTable, $onlineTable));
} }
public function testListTablesExcludesViews()
{
$this->createTestTable('list_tables_excludes_views');
$name = "list_tables_excludes_views_test_view";
$sql = "SELECT * from list_tables_excludes_views";
$view = new Schema\View($name, $sql);
$this->_sm->dropAndCreateView($view);
$tables = $this->_sm->listTables();
$foundTable = false;
foreach ($tables as $table) {
$this->assertInstanceOf('Doctrine\DBAL\Schema\Table', $table, 'No Table instance was found in tables array.');
if (strtolower($table->getName()) == 'list_tables_excludes_views_test_view') {
$foundTable = true;
}
}
$this->assertFalse($foundTable, 'View "list_tables_excludes_views_test_view" must not be found in table list');
}
} }
class MoneyType extends Type class MoneyType extends Type
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment