aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Fischer <bantu@phpbb.com>2013-01-23 15:45:18 +0100
committerAndreas Fischer <bantu@phpbb.com>2013-01-23 15:45:18 +0100
commit9a0992f6a0618d8423d15db7fd7780fdfd4c1670 (patch)
tree5aea578fa108b64ae7aec4c4a34485c1a3a0faa9
parenta83c766ebde91aa516fb94f1ac498bac9db4803e (diff)
parent02a1777fcbc550b4d91aaa585cffa9c052e4c525 (diff)
downloadforums-9a0992f6a0618d8423d15db7fd7780fdfd4c1670.tar
forums-9a0992f6a0618d8423d15db7fd7780fdfd4c1670.tar.gz
forums-9a0992f6a0618d8423d15db7fd7780fdfd4c1670.tar.bz2
forums-9a0992f6a0618d8423d15db7fd7780fdfd4c1670.tar.xz
forums-9a0992f6a0618d8423d15db7fd7780fdfd4c1670.zip
Merge remote-tracking branch 'p/ticket/11295' into develop-olympus
* p/ticket/11295: [ticket/11295] Drop tables rather than database for postgres in test suite.
-rw-r--r--tests/test_framework/phpbb_database_test_connection_manager.php27
1 files changed, 25 insertions, 2 deletions
diff --git a/tests/test_framework/phpbb_database_test_connection_manager.php b/tests/test_framework/phpbb_database_test_connection_manager.php
index d7c2804aa7..3b8c2e99ae 100644
--- a/tests/test_framework/phpbb_database_test_connection_manager.php
+++ b/tests/test_framework/phpbb_database_test_connection_manager.php
@@ -186,6 +186,16 @@ class phpbb_database_test_connection_manager
$this->purge_extras();
break;
+ case 'postgres':
+ $this->connect();
+ // Drop all of the tables
+ foreach ($this->get_tables() as $table)
+ {
+ $this->pdo->exec('DROP TABLE ' . $table . ' CASCADE');
+ }
+ $this->purge_extras();
+ break;
+
default:
$this->connect(false);
@@ -293,7 +303,7 @@ class phpbb_database_test_connection_manager
protected function load_schema_from_file($directory)
{
$schema = $this->dbms['SCHEMA'];
-
+
if ($this->config['dbms'] == 'mysql')
{
$sth = $this->pdo->query('SELECT VERSION() AS version');
@@ -313,7 +323,7 @@ class phpbb_database_test_connection_manager
$queries = file_get_contents($filename);
$sql = phpbb_remove_comments($queries);
-
+
$sql = split_sql_file($sql, $this->dbms['DELIM']);
foreach ($sql as $query)
@@ -419,6 +429,19 @@ class phpbb_database_test_connection_manager
$queries[] = 'DROP SEQUENCE ' . current($row);
}
break;
+
+ case 'postgres':
+ $sql = 'SELECT sequence_name
+ FROM information_schema.sequences';
+ $result = $this->pdo->query($sql);
+
+ while ($row = $result->fetch(PDO::FETCH_NUM))
+ {
+ $queries[] = 'DROP SEQUENCE ' . current($row);
+ }
+
+ $queries[] = 'DROP TYPE IF EXISTS varchar_ci CASCADE';
+ break;
}
foreach ($queries as $query)