From 392608b0faa141fbcaf30b28729d2f24f0ce7bc9 Mon Sep 17 00:00:00 2001 From: Sam Minnee Date: Thu, 7 May 2009 03:49:15 +0000 Subject: [PATCH] ENHANCEMENT: Added db-abstraction for test database creation and removal. git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@76345 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- core/model/DatabaseAdmin.php | 5 +++-- dev/SapphireTest.php | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/core/model/DatabaseAdmin.php b/core/model/DatabaseAdmin.php index 03f2b9a08..3a8636e0a 100644 --- a/core/model/DatabaseAdmin.php +++ b/core/model/DatabaseAdmin.php @@ -225,9 +225,10 @@ class DatabaseAdmin extends Controller { * @todo Move this code into Database class, for DB abstraction */ function clearAllData() { - $tables = DB::query("SHOW TABLES")->column(); + $tables = DB::getConn()->tableList(); foreach($tables as $table) { - DB::query("TRUNCATE \"$table\""); + if(DB::getConn()->hasMethod('clearTable')) DB::getConn()->clearTable($table); + else DB::query("TRUNCATE \"$table\""); } } diff --git a/dev/SapphireTest.php b/dev/SapphireTest.php index fae51acbd..c4f3a8e87 100644 --- a/dev/SapphireTest.php +++ b/dev/SapphireTest.php @@ -229,7 +229,7 @@ class SapphireTest extends PHPUnit_Framework_TestCase { if(self::using_temp_db()) { $dbConn = DB::getConn(); $dbName = $dbConn->currentDatabase(); - if($dbName && DB::query("SHOW DATABASES LIKE '$dbName'")->value()) { + if($dbName && DB::getConn()->databaseExists($dbName)) { // echo "Deleted temp database " . $dbConn->currentDatabase() . "\n"; $dbConn->dropDatabase(); }