summaryrefslogtreecommitdiff
path: root/modules/gallery_unit_test/controllers
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2008-11-02 23:55:09 +0000
committerBharat Mediratta <bharat@menalto.com>2008-11-02 23:55:09 +0000
commite173f36bcb50451c49e5708de29fcb41267b41f4 (patch)
tree8731a44fea798548426ffbbc24421c87091fe147 /modules/gallery_unit_test/controllers
parentaff7048b1f94dfcc98924bf9a0904dbba13709f7 (diff)
Create some basic infrastructure:
* item model (contains basic item info, similar to the gx version) * module model (has info about each module and which version of it is installed) * added a very basic unit test to verify that we can create an instance of item * Updated our test controller to require a unit_test db config and call core::install if it hasn't been done already. New pattern: * core/helpers/core_installer.php creates core_installer helper. When we install a new module you call xxx_installer::install(), and when you want it to go away, you do xxx_installer::uninstall() Create
Diffstat (limited to 'modules/gallery_unit_test/controllers')
-rw-r--r--modules/gallery_unit_test/controllers/test.php23
1 files changed, 23 insertions, 0 deletions
diff --git a/modules/gallery_unit_test/controllers/test.php b/modules/gallery_unit_test/controllers/test.php
index 052a58e5..d012cf8b 100644
--- a/modules/gallery_unit_test/controllers/test.php
+++ b/modules/gallery_unit_test/controllers/test.php
@@ -23,6 +23,27 @@ class Test_Controller extends Controller {
print Kohana::show_404();
}
+ $original_config = DOCROOT . "var/database.php";
+ $test_config = VARPATH . "database.php";
+ if (!file_exists($original_config)) {
+ print "Please create $original and create a 'unit_test' database configuration.\n";
+ } else {
+ copy($original_config, $test_config);
+ $db_config = Kohana::config('database');
+ if (empty($db_config['unit_test'])) {
+ print "Please create create a 'unit_test' database configuration in $db_config.\n";
+ return;
+ }
+
+ try {
+ $db = Database::instance('unit_test');
+ $db->connect();
+ } catch (Exception $e) {
+ print "{$e->getMessage()}\n";
+ return;
+ }
+ }
+
// Find all tests, excluding sample tests that come with the unit_test module.
$paths = array(APPPATH . "tests");
foreach (glob(MODPATH . "*/tests") as $path) {
@@ -32,6 +53,8 @@ class Test_Controller extends Controller {
}
Kohana::config_set('unit_test.paths', $paths);
+ core_installer::install();
+
print new Unit_Test();
}
}