summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorSimon Holywell <[email protected]>2013-08-28 16:33:59 +0100
committerSimon Holywell <[email protected]>2013-08-28 16:33:59 +0100
commitc8429046ef9a42b94fe4321155f20c4f29809e60 (patch)
tree727c6be41c9de4ec95c0b07dfd7705d68194c66a /test
parent51c1f4762b26b99a5a27d1f9ab76d70396c8d669 (diff)
Test and document the query logger callback
Diffstat (limited to 'test')
-rw-r--r--test/ConfigTest53.php109
1 files changed, 11 insertions, 98 deletions
diff --git a/test/ConfigTest53.php b/test/ConfigTest53.php
index 43fe6fa..ef8af77 100644
--- a/test/ConfigTest53.php
+++ b/test/ConfigTest53.php
@@ -1,6 +1,6 @@
<?php
-class ConfigTest extends PHPUnit_Framework_TestCase {
+class ConfigTest53 extends PHPUnit_Framework_TestCase {
public function setUp() {
// Enable logging
@@ -20,104 +20,17 @@ class ConfigTest extends PHPUnit_Framework_TestCase {
ORM::configure('id_column', 'id');
}
- protected function setUpIdColumnOverrides() {
- ORM::configure('id_column_overrides', array(
- 'widget' => 'widget_id',
- 'widget_handle' => 'widget_handle_id',
- ));
- }
-
- protected function tearDownIdColumnOverrides() {
- ORM::configure('id_column_overrides', array());
- }
-
- public function testSettingIdColumn() {
- ORM::for_table('widget')->find_one(5);
- $expected = "SELECT * FROM `widget` WHERE `primary_key` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
- }
-
- public function testSettingIdColumnOverridesOne() {
- $this->setUpIdColumnOverrides();
-
- ORM::for_table('widget')->find_one(5);
- $expected = "SELECT * FROM `widget` WHERE `widget_id` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
-
- $this->tearDownIdColumnOverrides();
- }
-
- public function testSettingIdColumnOverridesTwo() {
- $this->setUpIdColumnOverrides();
-
- ORM::for_table('widget_handle')->find_one(5);
- $expected = "SELECT * FROM `widget_handle` WHERE `widget_handle_id` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
-
- $this->tearDownIdColumnOverrides();
- }
-
- public function testSettingIdColumnOverridesThree() {
- $this->setUpIdColumnOverrides();
+ public function testLoggerCallback() {
+ ORM::configure('logger', function($log_string) {
+ return $log_string;
+ });
+ $function = ORM::get_config('logger');
+ $this->assertTrue(is_callable($function));
- ORM::for_table('widget_nozzle')->find_one(5);
- $expected = "SELECT * FROM `widget_nozzle` WHERE `primary_key` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
-
- $this->tearDownIdColumnOverrides();
- }
-
- public function testInstanceIdColumnOne() {
- $this->setUpIdColumnOverrides();
-
- ORM::for_table('widget')->use_id_column('new_id')->find_one(5);
- $expected = "SELECT * FROM `widget` WHERE `new_id` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
-
- $this->tearDownIdColumnOverrides();
- }
-
- public function testInstanceIdColumnTwo() {
- $this->setUpIdColumnOverrides();
-
- ORM::for_table('widget_handle')->use_id_column('new_id')->find_one(5);
- $expected = "SELECT * FROM `widget_handle` WHERE `new_id` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
-
- $this->tearDownIdColumnOverrides();
- }
-
- public function testInstanceIdColumnThree() {
- $this->setUpIdColumnOverrides();
-
- ORM::for_table('widget_nozzle')->use_id_column('new_id')->find_one(5);
- $expected = "SELECT * FROM `widget_nozzle` WHERE `new_id` = '5' LIMIT 1";
- $this->assertEquals($expected, ORM::get_last_query());
-
- $this->tearDownIdColumnOverrides();
- }
-
- public function testGetConfig() {
- $this->assertTrue(ORM::get_config('logging'));
- ORM::configure('logging', false);
- $this->assertFalse(ORM::get_config('logging'));
- }
+ $log_string = "UPDATE `widget` SET `added` = NOW() WHERE `id` = '1'";
+ $this->assertEquals($log_string, $function($log_string));
- public function testGetConfigArray() {
- $expected = array(
- 'connection_string' => 'sqlite::memory:',
- 'id_column' => 'primary_key',
- 'id_column_overrides' => array(),
- 'error_mode' => PDO::ERRMODE_EXCEPTION,
- 'username' => null,
- 'password' => null,
- 'driver_options' => null,
- 'identifier_quote_character' => '`',
- 'logging' => true,
- 'caching' => false,
- 'return_result_sets' => false,
- );
- $this->assertEquals($expected, ORM::get_config());
+ ORM::configure('logger', null);
}
-}
+} \ No newline at end of file