From dcad7e02f5dca586fb2e727e19f27b15c969afa1 Mon Sep 17 00:00:00 2001 From: Chuck Hagenbuch Date: Mon, 16 Feb 2009 15:35:23 -0500 Subject: [PATCH] first pass on migration tests --- framework/Db/test/Horde/Db/AllTests.php | 20 ++++++++++++++------ framework/Db/test/Horde/Db/Migration/BaseTest.php | 13 +++++++++---- .../fixtures/migrations/1_users_have_last_names1.php | 2 +- .../Db/fixtures/migrations/2_we_need_reminders1.php | 2 +- .../Db/fixtures/migrations/3_innocent_jointable1.php | 2 +- .../1_give_me_big_numbers.php | 2 +- .../1_users_have_last_names2.php | 2 +- .../2_we_need_reminders2.php | 2 +- .../Db/fixtures/migrations_with_duplicate/3_foo.php | 4 ++-- .../3_innocent_jointable2.php | 2 +- .../1000_users_have_middle_names.php | 2 +- .../1_users_have_last_names3.php | 2 +- 12 files changed, 34 insertions(+), 21 deletions(-) diff --git a/framework/Db/test/Horde/Db/AllTests.php b/framework/Db/test/Horde/Db/AllTests.php index 043ff5611..af7d2b7b6 100644 --- a/framework/Db/test/Horde/Db/AllTests.php +++ b/framework/Db/test/Horde/Db/AllTests.php @@ -57,13 +57,21 @@ class Horde_Db_AllTests { $baseregexp = preg_quote($basedir . DIRECTORY_SEPARATOR, '/'); foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator($basedir)) as $file) { - if ($file->isFile() && preg_match('/Suite.php$/', $file->getFilename())) { - $pathname = $file->getPathname(); - require $pathname; + if (!$file->isFile()) { + continue; + } + + $filename = $file->getFilename(); + $pathname = $file->getPathname(); + $class = str_replace(DIRECTORY_SEPARATOR, '_', + preg_replace("/^$baseregexp(.*)\.php/", '\\1', $pathname)); - $class = str_replace(DIRECTORY_SEPARATOR, '_', - preg_replace("/^$baseregexp(.*)\.php/", '\\1', $pathname)); - $suite->addTestSuite('Horde_Db_'.$class); + if (preg_match('/Suite.php$/', $filename)) { + require $pathname; + $suite->addTestSuite('Horde_Db_' . $class); + } elseif (strpos($class, 'Adapter_') === false && preg_match('/Test.php$/', $filename)) { + require $pathname; + $suite->addTestSuite('Horde_Db_' . $class); } } diff --git a/framework/Db/test/Horde/Db/Migration/BaseTest.php b/framework/Db/test/Horde/Db/Migration/BaseTest.php index 0a7db7089..bc1c871e2 100644 --- a/framework/Db/test/Horde/Db/Migration/BaseTest.php +++ b/framework/Db/test/Horde/Db/Migration/BaseTest.php @@ -12,9 +12,9 @@ * @subpackage UnitTests */ -require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/fixtures/migrations/1_users_have_last_names1.php'; -require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/fixtures/migrations/2_we_need_reminders1.php'; -require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/fixtures/migrations_with_decimal/1_give_me_big_numbers.php'; +require_once dirname(dirname(__FILE__)) . '/fixtures/migrations/1_users_have_last_names1.php'; +require_once dirname(dirname(__FILE__)) . '/fixtures/migrations/2_we_need_reminders1.php'; +require_once dirname(dirname(__FILE__)) . '/fixtures/migrations_with_decimal/1_give_me_big_numbers.php'; /** * @author Mike Naberezny @@ -30,6 +30,11 @@ class Horde_Db_Migration_BaseTest extends PHPUnit_Framework_TestCase { public function setUp() { + $this->_conn = Horde_Db_Adapter::factory(array( + 'adapter' => 'pdo_sqlite', + 'dbname' => ':memory:', + )); + Horde_Db_Migration_Base::$verbose = false; } @@ -79,7 +84,7 @@ class Horde_Db_Migration_BaseTest extends PHPUnit_Framework_TestCase $this->_conn->addIndex('users', array('last_name', 'first_name')); $this->_conn->removeIndex('users', 'last_name_and_first_name'); - // # quoting + // quoting $this->_conn->addIndex('users', array('key'), array('name' => 'key_idx', 'unique' => true)); $this->_conn->removeIndex('users', array('name' => 'key_idx', 'unique' => true)); diff --git a/framework/Db/test/Horde/Db/fixtures/migrations/1_users_have_last_names1.php b/framework/Db/test/Horde/Db/fixtures/migrations/1_users_have_last_names1.php index fd389e570..24ca48b2e 100644 --- a/framework/Db/test/Horde/Db/fixtures/migrations/1_users_have_last_names1.php +++ b/framework/Db/test/Horde/Db/fixtures/migrations/1_users_have_last_names1.php @@ -1,6 +1,6 @@