diff options
author | Dries Buytaert <dries@buytaert.net> | 2009-05-30 11:17:32 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2009-05-30 11:17:32 +0000 |
commit | 0f77f652fa96c9d170ec5352fb1a3574d92e6e73 (patch) | |
tree | c16f1b89d9c2db5aa8be3976c649e61c06379e65 /modules | |
parent | 83631203f872f9b5b90d9f227c98a202a84a0f1e (diff) | |
download | brdo-0f77f652fa96c9d170ec5352fb1a3574d92e6e73.tar.gz brdo-0f77f652fa96c9d170ec5352fb1a3574d92e6e73.tar.bz2 |
- Patch #394524 by Berdir, Damien Tournoud: converted to the new database abstraction layer.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/simpletest/drupal_web_test_case.php | 24 | ||||
-rw-r--r-- | modules/simpletest/simpletest.module | 8 | ||||
-rw-r--r-- | modules/simpletest/tests/actions.test | 2 | ||||
-rw-r--r-- | modules/simpletest/tests/bootstrap.test | 16 | ||||
-rw-r--r-- | modules/simpletest/tests/database_test.test | 328 | ||||
-rw-r--r-- | modules/simpletest/tests/error_test.module | 2 | ||||
-rw-r--r-- | modules/simpletest/tests/file.test | 2 | ||||
-rw-r--r-- | modules/simpletest/tests/menu.test | 16 | ||||
-rw-r--r-- | modules/simpletest/tests/module.test | 6 | ||||
-rw-r--r-- | modules/simpletest/tests/registry.test | 21 | ||||
-rw-r--r-- | modules/simpletest/tests/schema.test | 4 | ||||
-rw-r--r-- | modules/simpletest/tests/taxonomy_test.module | 18 |
12 files changed, 274 insertions, 173 deletions
diff --git a/modules/simpletest/drupal_web_test_case.php b/modules/simpletest/drupal_web_test_case.php index daa04a110..8ac5f1501 100644 --- a/modules/simpletest/drupal_web_test_case.php +++ b/modules/simpletest/drupal_web_test_case.php @@ -121,7 +121,9 @@ abstract class DrupalTestCase { ); // Store assertion for display after the test has completed. - db_insert('simpletest')->fields($assertion)->execute(); + db_insert('simpletest') + ->fields($assertion) + ->execute(); // Return to testing prefix. $db_prefix = $current_db_prefix; @@ -679,7 +681,10 @@ class DrupalWebTestCase extends DrupalTestCase { node_save($node); // small hack to link revisions to our test user - db_query('UPDATE {node_revision} SET uid = %d WHERE vid = %d', $node->uid, $node->vid); + db_update('node_revision') + ->fields(array('uid' => $node->uid)) + ->condition('vid', $node->vid) + ->execute(); return $node; } @@ -832,15 +837,22 @@ class DrupalWebTestCase extends DrupalTestCase { // Create new role. $role_name = $this->randomName(); - db_query("INSERT INTO {role} (name) VALUES ('%s')", $role_name); - $role = db_fetch_object(db_query("SELECT * FROM {role} WHERE name = '%s'", $role_name)); + db_insert('role') + ->fields(array('name' => $role_name)) + ->execute(); + $role = db_query('SELECT * FROM {role} WHERE name = :name', array(':name' => $role_name))->fetchObject(); $this->assertTrue($role, t('Created role of name: @role_name, id: @rid', array('@role_name' => $role_name, '@rid' => (isset($role->rid) ? $role->rid : t('-n/a-')))), t('Role')); if ($role && !empty($role->rid)) { // Assign permissions to role and mark it for clean-up. + $query = db_insert('role_permission')->fields(array('rid', 'permission')); foreach ($permissions as $permission_string) { - db_query("INSERT INTO {role_permission} (rid, permission) VALUES (%d, '%s')", $role->rid, $permission_string); + $query->values(array( + 'rid' => $role->rid, + 'permission' => $permission_string, + )); } - $count = db_result(db_query("SELECT COUNT(*) FROM {role_permission} WHERE rid = %d", $role->rid)); + $query->execute(); + $count = db_query('SELECT COUNT(*) FROM {role_permission} WHERE rid = :rid', array(':rid' => $role->rid))->fetchField(); $this->assertTrue($count == count($permissions), t('Created permissions: @perms', array('@perms' => implode(', ', $permissions))), t('Role')); return $role->rid; } diff --git a/modules/simpletest/simpletest.module b/modules/simpletest/simpletest.module index b8a4eb676..91d82aa86 100644 --- a/modules/simpletest/simpletest.module +++ b/modules/simpletest/simpletest.module @@ -102,7 +102,9 @@ function _simpletest_format_summary_line($summary) { */ function simpletest_run_tests($test_list, $reporter = 'drupal') { cache_clear_all(); - $test_id = db_insert('simpletest_test_id')->useDefaults(array('test_id'))->execute(); + $test_id = db_insert('simpletest_test_id') + ->useDefaults(array('test_id')) + ->execute(); // Get the info for the first test being run. $first_test = array_shift($test_list); @@ -325,7 +327,7 @@ function simpletest_clean_temporary_directories() { function simpletest_clean_results_table($test_id = NULL) { if (variable_get('simpletest_clear_results', TRUE)) { if ($test_id) { - $count = db_result(db_query('SELECT COUNT(test_id) FROM {simpletest_test_id} WHERE test_id = :test_id', array(':test_id' => $test_id))); + $count = db_query('SELECT COUNT(test_id) FROM {simpletest_test_id} WHERE test_id = :test_id', array(':test_id' => $test_id))->fetchField(); db_delete("simpletest") ->condition('test_id', $test_id) @@ -335,7 +337,7 @@ function simpletest_clean_results_table($test_id = NULL) { ->execute(); } else { - $count = db_result(db_query('SELECT COUNT(test_id) FROM {simpletest_test_id}')); + $count = db_query('SELECT COUNT(test_id) FROM {simpletest_test_id}')->fetchField(); // Clear test results. db_delete("simpletest")->execute(); diff --git a/modules/simpletest/tests/actions.test b/modules/simpletest/tests/actions.test index 42bfaf322..18ff1f476 100644 --- a/modules/simpletest/tests/actions.test +++ b/modules/simpletest/tests/actions.test @@ -57,7 +57,7 @@ class ActionsConfigurationTestCase extends DrupalWebTestCase { $this->assertRaw(t('Action %action was deleted', array('%action' => $new_action_description)), t('Make sure that we get a delete confirmation message.')); $this->drupalGet('admin/settings/actions/manage'); $this->assertNoText($new_action_description, t("Make sure the action description does not appear on the overview page after we've deleted the action.")); - $exists = db_result(db_query("SELECT aid FROM {actions} WHERE callback = 'drupal_goto_action'")); + $exists = db_query('SELECT aid FROM {actions} WHERE callback = :callback', array(':callback' => 'drupal_goto_action'))->fetchField(); $this->assertFalse($exists, t('Make sure the action is gone from the database after being deleted.')); } } diff --git a/modules/simpletest/tests/bootstrap.test b/modules/simpletest/tests/bootstrap.test index bcd8e4cc2..9306b82f5 100644 --- a/modules/simpletest/tests/bootstrap.test +++ b/modules/simpletest/tests/bootstrap.test @@ -251,31 +251,31 @@ class HookBootExitTestCase extends DrupalWebTestCase { variable_set('cache', CACHE_DISABLED); $this->drupalGet(''); $calls = 1; - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_boot'")->fetchField(), $calls, t('hook_boot called with disabled cache.')); - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_exit'")->fetchField(), $calls, t('hook_exit called with disabled cache.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_boot'))->fetchField(), $calls, t('hook_boot called with disabled cache.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_exit'))->fetchField(), $calls, t('hook_exit called with disabled cache.')); // Test with normal cache. Boot and exit should be called. variable_set('cache', CACHE_NORMAL); $this->drupalGet(''); $calls++; - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_boot'")->fetchField(), $calls, t('hook_boot called with normal cache.')); - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_exit'")->fetchField(), $calls, t('hook_exit called with normal cache.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_boot'))->fetchField(), $calls, t('hook_boot called with normal cache.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_exit'))->fetchField(), $calls, t('hook_exit called with normal cache.')); // Test with aggressive cache. Boot and exit should not fire since the // page is cached. variable_set('cache', CACHE_AGGRESSIVE); $this->assertTrue(cache_get(url('', array('absolute' => TRUE)), 'cache_page'), t('Page has been cached.')); $this->drupalGet(''); - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_boot'")->fetchField(), $calls, t('hook_boot not called with agressive cache and a cached page.')); - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_exit'")->fetchField(), $calls, t('hook_exit not called with agressive cache and a cached page.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_boot'))->fetchField(), $calls, t('hook_boot not called with agressive cache and a cached page.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_exit'))->fetchField(), $calls, t('hook_exit not called with agressive cache and a cached page.')); // Test with aggressive cache and page cache cleared. Boot and exit should // be called. $this->assertTrue(db_delete('cache_page')->execute(), t('Page cache cleared.')); $this->drupalGet(''); $calls++; - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_boot'")->fetchField(), $calls, t('hook_boot called with agressive cache and no cached page.')); - $this->assertEqual(db_query("SELECT COUNT(*) FROM {watchdog} WHERE type = 'system_test' AND message = 'hook_exit'")->fetchField(), $calls, t('hook_exit called with agressive cache and no cached page.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_boot'))->fetchField(), $calls, t('hook_boot called with agressive cache and no cached page.')); + $this->assertEqual(db_query('SELECT COUNT(*) FROM {watchdog} WHERE type = :type AND message = :message', array(':type' => 'system_test', ':message' => 'hook_exit'))->fetchField(), $calls, t('hook_exit called with agressive cache and no cached page.')); } } diff --git a/modules/simpletest/tests/database_test.test b/modules/simpletest/tests/database_test.test index 6a5faa538..0263036ef 100644 --- a/modules/simpletest/tests/database_test.test +++ b/modules/simpletest/tests/database_test.test @@ -252,7 +252,7 @@ class DatabaseFetchTestCase extends DatabaseTestCase { */ function testQueryFetchDefault() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age = :age", array(':age' => 25)); + $result = db_query('SELECT name FROM {test} WHERE age = :age', array(':age' => 25)); $this->assertTrue($result instanceof DatabaseStatementInterface, t('Result set is a Drupal statement object.')); foreach ($result as $record) { $records[] = $record; @@ -268,7 +268,7 @@ class DatabaseFetchTestCase extends DatabaseTestCase { */ function testQueryFetchObject() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age = :age", array(':age' => 25), array('fetch' => PDO::FETCH_OBJ)); + $result = db_query('SELECT name FROM {test} WHERE age = :age', array(':age' => 25), array('fetch' => PDO::FETCH_OBJ)); foreach ($result as $record) { $records[] = $record; $this->assertTrue(is_object($record), t('Record is an object.')); @@ -283,7 +283,7 @@ class DatabaseFetchTestCase extends DatabaseTestCase { */ function testQueryFetchArray() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age = :age", array(':age' => 25), array('fetch' => PDO::FETCH_ASSOC)); + $result = db_query('SELECT name FROM {test} WHERE age = :age', array(':age' => 25), array('fetch' => PDO::FETCH_ASSOC)); foreach ($result as $record) { $records[] = $record; if ($this->assertTrue(is_array($record), t('Record is an array.'))) { @@ -301,7 +301,7 @@ class DatabaseFetchTestCase extends DatabaseTestCase { */ function testQueryFetchClass() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age = :age", array(':age' => 25), array('fetch' => 'FakeRecord')); + $result = db_query('SELECT name FROM {test} WHERE age = :age', array(':age' => 25), array('fetch' => 'FakeRecord')); foreach ($result as $record) { $records[] = $record; if ($this->assertTrue($record instanceof FakeRecord, t('Record is an object of class FakeRecord.'))) { @@ -335,7 +335,7 @@ class DatabaseFetch2TestCase extends DatabaseTestCase { // Confirm that we can fetch a record into an indexed array explicitly. function testQueryFetchNum() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age = :age", array(':age' => 25), array('fetch' => PDO::FETCH_NUM)); + $result = db_query('SELECT name FROM {test} WHERE age = :age', array(':age' => 25), array('fetch' => PDO::FETCH_NUM)); foreach ($result as $record) { $records[] = $record; if ($this->assertTrue(is_array($record), t('Record is an array.'))) { @@ -351,7 +351,7 @@ class DatabaseFetch2TestCase extends DatabaseTestCase { */ function testQueryFetchBoth() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age = :age", array(':age' => 25), array('fetch' => PDO::FETCH_BOTH)); + $result = db_query('SELECT name FROM {test} WHERE age = :age', array(':age' => 25), array('fetch' => PDO::FETCH_BOTH)); foreach ($result as $record) { $records[] = $record; if ($this->assertTrue(is_array($record), t('Record is an array.'))) { @@ -368,11 +368,11 @@ class DatabaseFetch2TestCase extends DatabaseTestCase { */ function testQueryFetchCol() { $records = array(); - $result = db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25)); + $result = db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25)); $column = $result->fetchCol(); $this->assertIdentical(count($column), 3, t('fetchCol() returns the right number of records.')); - $result = db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25)); + $result = db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25)); $i = 0; foreach ($result as $record) { $this->assertIdentical($record->name, $column[$i++], t('Column matches direct accesss.')); @@ -397,7 +397,7 @@ class DatabaseInsertTestCase extends DatabaseTestCase { * Test the very basic insert functionality. */ function testSimpleInsert() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $query = db_insert('test'); $query->fields(array( @@ -406,9 +406,9 @@ class DatabaseInsertTestCase extends DatabaseTestCase { )); $query->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $this->assertIdentical($num_records_before + 1, (int)$num_records_after, t('Record inserts correctly.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Yoko'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Yoko'))->fetchField(); $this->assertIdentical($saved_age, '29', t('Can retrieve after inserting.')); } @@ -416,7 +416,7 @@ class DatabaseInsertTestCase extends DatabaseTestCase { * Test that we can insert multiple records in one query object. */ function testMultiInsert() { - $num_records_before = (int) db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_before = (int) db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $query = db_insert('test'); $query->fields(array( @@ -435,13 +435,13 @@ class DatabaseInsertTestCase extends DatabaseTestCase { $query->values(array('Moe', '32')); $query->execute(); - $num_records_after = (int) db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_after = (int) db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $this->assertIdentical($num_records_before + 3, $num_records_after, t('Record inserts correctly.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Larry'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Larry'))->fetchField(); $this->assertIdentical($saved_age, '30', t('Can retrieve after inserting.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Curly'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Curly'))->fetchField(); $this->assertIdentical($saved_age, '31', t('Can retrieve after inserting.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Moe'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Moe'))->fetchField(); $this->assertIdentical($saved_age, '32', t('Can retrieve after inserting.')); } @@ -449,7 +449,7 @@ class DatabaseInsertTestCase extends DatabaseTestCase { * Test that an insert object can be reused with new data after it executes. */ function testRepeatedInsert() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $query = db_insert('test'); @@ -470,13 +470,13 @@ class DatabaseInsertTestCase extends DatabaseTestCase { $query->values(array('Moe', '32')); $query->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $this->assertIdentical((int) $num_records_before + 3, (int) $num_records_after, t('Record inserts correctly.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Larry'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Larry'))->fetchField(); $this->assertIdentical($saved_age, '30', t('Can retrieve after inserting.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Curly'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Curly'))->fetchField(); $this->assertIdentical($saved_age, '31', t('Can retrieve after inserting.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Moe'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Moe'))->fetchField(); $this->assertIdentical($saved_age, '32', t('Can retrieve after inserting.')); } @@ -492,11 +492,11 @@ class DatabaseInsertTestCase extends DatabaseTestCase { ->values(array('Curly', '31')) ->values(array('Moe', '32')) ->execute(); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Larry'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Larry'))->fetchField(); $this->assertIdentical($saved_age, '30', t('Can retrieve after inserting.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Curly'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Curly'))->fetchField(); $this->assertIdentical($saved_age, '31', t('Can retrieve after inserting.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Moe'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Moe'))->fetchField(); $this->assertIdentical($saved_age, '32', t('Can retrieve after inserting.')); } @@ -504,7 +504,8 @@ class DatabaseInsertTestCase extends DatabaseTestCase { * Test that inserts return the proper auto-increment ID. */ function testInsertLastInsertID() { - $id = db_insert('test')->fields(array( + $id = db_insert('test') + ->fields(array( 'name' => 'Larry', 'age' => '30', )) @@ -533,9 +534,10 @@ class DatabaseInsertLOBTestCase extends DatabaseTestCase { function testInsertOneBlob() { $data = "This is\000a test."; $this->assertTrue(strlen($data) === 15, t('Test data contains a NULL.')); - $id = db_insert('test_one_blob')->fields(array('blob1' => $data))->execute(); - $res = db_query('SELECT * FROM {test_one_blob} WHERE id = :id', array(':id' => $id)); - $r = db_fetch_array($res); + $id = db_insert('test_one_blob') + ->fields(array('blob1' => $data)) + ->execute(); + $r = db_query('SELECT * FROM {test_one_blob} WHERE id = :id', array(':id' => $id))->fetchAssoc(); $this->assertTrue($r['blob1'] === $data, t('Can insert a blob: id @id, @data.', array('@id' => $id, '@data' => serialize($r)))); } @@ -543,13 +545,13 @@ class DatabaseInsertLOBTestCase extends DatabaseTestCase { * Test that we can insert multiple blob fields in the same query. */ function testInsertMultipleBlob() { - $id = db_insert('test_two_blobs')->fields(array( - 'blob1' => 'This is', - 'blob2' => 'a test', + $id = db_insert('test_two_blobs') + ->fields(array( + 'blob1' => 'This is', + 'blob2' => 'a test', )) - ->execute(); - $res = db_query('SELECT * FROM {test_two_blobs} WHERE id = %d', $id); - $r = db_fetch_array($res); + ->execute(); + $r = db_query('SELECT * FROM {test_two_blobs} WHERE id = :id', array(':id' => $id))->fetchAssoc(); $this->assertTrue($r['blob1'] === 'This is' && $r['blob2'] === 'a test', t('Can insert multiple blobs per row.')); } } @@ -576,7 +578,7 @@ class DatabaseInsertDefaultsTestCase extends DatabaseTestCase { $schema = drupal_get_schema('test'); - $job = db_query("SELECT job FROM {test} WHERE id = :id", array(':id' => $id))->fetchField(); + $job = db_query('SELECT job FROM {test} WHERE id = :id', array(':id' => $id))->fetchField(); $this->assertEqual($job, $schema['fields']['job']['default'], t('Default field value is set.')); } @@ -584,12 +586,12 @@ class DatabaseInsertDefaultsTestCase extends DatabaseTestCase { * Test that no action will be preformed if no fields are specified. */ function testDefaultEmptyInsert() { - $num_records_before = (int) db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_before = (int) db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $result = db_insert('test')->execute(); $this->assertNull($result, t('Return NULL as no fields are specified.')); - $num_records_after = (int) db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_after = (int) db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $this->assertIdentical($num_records_before, $num_records_after, t('Do nothing as no fields are specified.')); } @@ -597,12 +599,14 @@ class DatabaseInsertDefaultsTestCase extends DatabaseTestCase { * Test that we can insert fields with values and defaults in the same query. */ function testDefaultInsertWithFields() { - $query = db_insert('test')->fields(array('name' => 'Bob'))->useDefaults(array('job')); + $query = db_insert('test') + ->fields(array('name' => 'Bob')) + ->useDefaults(array('job')); $id = $query->execute(); $schema = drupal_get_schema('test'); - $job = db_query("SELECT job FROM {test} WHERE id = :id", array(':id' => $id))->fetchField(); + $job = db_query('SELECT job FROM {test} WHERE id = :id', array(':id' => $id))->fetchField(); $this->assertEqual($job, $schema['fields']['job']['default'], t('Default field value is set.')); } } @@ -624,10 +628,13 @@ class DatabaseUpdateTestCase extends DatabaseTestCase { * Confirm that we can update a single record successfully. */ function testSimpleUpdate() { - $num_updated = db_update('test')->fields(array('name' => 'Tiffany'))->condition('id', 1)->execute(); + $num_updated = db_update('test') + ->fields(array('name' => 'Tiffany')) + ->condition('id', 1) + ->execute(); $this->assertIdentical($num_updated, 1, t('Updated 1 record.')); - $saved_name = db_query("SELECT name FROM {test} WHERE id = :id", array(':id' => 1))->fetchField(); + $saved_name = db_query('SELECT name FROM {test} WHERE id = :id', array(':id' => 1))->fetchField(); $this->assertIdentical($saved_name, 'Tiffany', t('Updated name successfully.')); } @@ -635,10 +642,13 @@ class DatabaseUpdateTestCase extends DatabaseTestCase { * Confirm that we can update a multiple records successfully. */ function testMultiUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician'))->condition('job', 'Singer')->execute(); + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) + ->condition('job', 'Singer') + ->execute(); $this->assertIdentical($num_updated, 2, t('Updated 2 records.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '2', t('Updated fields successfully.')); } @@ -646,10 +656,13 @@ class DatabaseUpdateTestCase extends DatabaseTestCase { * Confirm that we can update a multiple records with a non-equality condition. */ function testMultiGTUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician'))->condition('age', 26, '>')->execute(); + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) + ->condition('age', 26, '>') + ->execute(); $this->assertIdentical($num_updated, 2, t('Updated 2 records.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '2', t('Updated fields successfully.')); } @@ -657,10 +670,13 @@ class DatabaseUpdateTestCase extends DatabaseTestCase { * Confirm that we can update a multiple records with a where call. */ function testWhereUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician'))->where('age > :age', array(':age' => 26))->execute(); + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) + ->where('age > :age', array(':age' => 26)) + ->execute(); $this->assertIdentical($num_updated, 2, t('Updated 2 records.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '2', t('Updated fields successfully.')); } @@ -668,11 +684,14 @@ class DatabaseUpdateTestCase extends DatabaseTestCase { * Confirm that we can stack condition and where calls. */ function testWhereAndConditionUpdate() { - $update = db_update('test')->fields(array('job' => 'Musician'))->where('age > :age', array(':age' => 26))->condition('name', 'Ringo'); + $update = db_update('test') + ->fields(array('job' => 'Musician')) + ->where('age > :age', array(':age' => 26)) + ->condition('name', 'Ringo'); $num_updated = $update->execute(); $this->assertIdentical($num_updated, 1, t('Updated 1 record.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '1', t('Updated fields successfully.')); } @@ -704,7 +723,7 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { $num_updated = $update->execute(); $this->assertIdentical($num_updated, 2, t('Updated 2 records.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '2', t('Updated fields successfully.')); } @@ -712,12 +731,13 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { * Test WHERE IN clauses. */ function testInConditionUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician')) + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) ->condition('name', array('John', 'Paul'), 'IN') ->execute(); $this->assertIdentical($num_updated, 2, t('Updated 2 records.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '2', t('Updated fields successfully.')); } @@ -725,12 +745,13 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { * Test WHERE NOT IN clauses. */ function testNotInConditionUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician')) + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) ->condition('name', array('John', 'Paul', 'George'), 'NOT IN') ->execute(); $this->assertIdentical($num_updated, 1, t('Updated 1 record.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '1', t('Updated fields successfully.')); } @@ -738,12 +759,13 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { * Test BETWEEN conditional clauses. */ function testBetweenConditionUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician')) + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) ->condition('age', array(25, 26), 'BETWEEN') ->execute(); $this->assertIdentical($num_updated, 2, t('Updated 2 records.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '2', t('Updated fields successfully.')); } @@ -751,12 +773,13 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { * Test LIKE conditionals. */ function testLikeConditionUpdate() { - $num_updated = db_update('test')->fields(array('job' => 'Musician')) + $num_updated = db_update('test') + ->fields(array('job' => 'Musician')) ->condition('name', '%ge%', 'LIKE') ->execute(); $this->assertIdentical($num_updated, 1, t('Updated 1 record.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '1', t('Updated fields successfully.')); } @@ -764,7 +787,7 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { * Test update with expression values. */ function testUpdateExpression() { - $before_age = db_query("SELECT age FROM {test} WHERE name = 'Ringo'")->fetchField(); + $before_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'))->fetchField(); $GLOBALS['larry_test'] = 1; $num_updated = db_update('test') ->condition('name', 'Ringo') @@ -773,10 +796,10 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { ->execute(); $this->assertIdentical($num_updated, 1, t('Updated 1 record.')); - $num_matches = db_query("SELECT COUNT(*) FROM {test} WHERE job = :job", array(':job' => 'Musician'))->fetchField(); + $num_matches = db_query('SELECT COUNT(*) FROM {test} WHERE job = :job', array(':job' => 'Musician'))->fetchField(); $this->assertIdentical($num_matches, '1', t('Updated fields successfully.')); - $person = db_query("SELECT * FROM {test} WHERE name = :name", array(':name' => 'Ringo'))->fetch(); + $person = db_query('SELECT * FROM {test} WHERE name = :name', array(':name' => 'Ringo'))->fetch(); $this->assertEqual($person->name, 'Ringo', t('Name set correctly.')); $this->assertEqual($person->age, $before_age + 4, t('Age set correctly.')); $this->assertEqual($person->job, 'Musician', t('Job set correctly.')); @@ -787,14 +810,14 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { * Test update with only expression values. */ function testUpdateOnlyExpression() { - $before_age = db_query("SELECT age FROM {test} WHERE name = 'Ringo'")->fetchField(); + $before_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'))->fetchField(); $num_updated = db_update('test') ->condition('name', 'Ringo') ->expression('age', 'age + :age', array(':age' => 4)) ->execute(); $this->assertIdentical($num_updated, 1, t('Updated 1 record.')); - $after_age = db_query("SELECT age FROM {test} WHERE name = 'Ringo'")->fetchField(); + $after_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'))->fetchField(); $this->assertEqual($before_age + 4, $after_age, t('Age updated correctly')); } } @@ -818,13 +841,17 @@ class DatabaseUpdateLOBTestCase extends DatabaseTestCase { function testUpdateOneBlob() { $data = "This is\000a test."; $this->assertTrue(strlen($data) === 15, t('Test data contains a NULL.')); - $id = db_insert('test_one_blob')->fields(array('blob1' => $data))->execute(); + $id = db_insert('test_one_blob') + ->fields(array('blob1' => $data)) + ->execute(); $data .= $data; - db_update('test_one_blob')->condition('id', $id)->fields(array('blob1' => $data))->execute(); + db_update('test_one_blob') + ->condition('id', $id) + ->fields(array('blob1' => $data)) + ->execute(); - $res = db_query('SELECT * FROM {test_one_blob} WHERE id = %d', $id); - $r = db_fetch_array($res); + $r = db_query('SELECT * FROM {test_one_blob} WHERE id = :id', array(':id' => $id))->fetchAssoc(); $this->assertTrue($r['blob1'] === $data, t('Can update a blob: id @id, @data.', array('@id' => $id, '@data' => serialize($r)))); } @@ -832,16 +859,19 @@ class DatabaseUpdateLOBTestCase extends DatabaseTestCase { * Confirm that we can update two blob columns in the same table. */ function testUpdateMultipleBlob() { - $id = db_insert('test_two_blobs')->fields(array( + $id = db_insert('test_two_blobs') + ->fields(array( 'blob1' => 'This is', - 'blob2' => 'a test') - ) + 'blob2' => 'a test', + )) ->execute(); - db_update('test_two_blobs')->condition('id', $id)->fields(array('blob1' => 'and so', 'blob2' => 'is this'))->execute(); + db_update('test_two_blobs') + ->condition('id', $id) + ->fields(array('blob1' => 'and so', 'blob2' => 'is this')) + ->execute(); - $res = db_query('SELECT * FROM {test_two_blobs} WHERE id = %d', $id); - $r = db_fetch_array($res); + $r = db_query('SELECT * FROM {test_two_blobs} WHERE id = :id', array(':id' => $id))->fetchAssoc(); $this->assertTrue($r['blob1'] === 'and so' && $r['blob2'] === 'is this', t('Can update multiple blobs per row.')); } } @@ -871,12 +901,14 @@ class DatabaseDeleteTruncateTestCase extends DatabaseTestCase { * Confirm that we can delete a single record successfully. */ function testSimpleDelete() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); - $num_deleted = db_delete('test')->condition('id', 1)->execute(); + $num_deleted = db_delete('test') + ->condition('id', 1) + ->execute(); $this->assertIdentical($num_deleted, 1, t('Deleted 1 record.')); - $num_records_after = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after + $num_deleted, t('Deletion adds up.')); } @@ -911,7 +943,7 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Confirm that we can merge-insert a record successfully. */ function testMergeInsert() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); db_merge('test_people') ->key(array('job' => 'Presenter')) @@ -921,10 +953,10 @@ class DatabaseMergeTestCase extends DatabaseTestCase { )) ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before + 1, $num_records_after, t('Merge inserted properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Presenter'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Presenter'))->fetch(); $this->assertEqual($person->name, 'Tiffany', t('Name set correctly.')); $this->assertEqual($person->age, 31, t('Age set correctly.')); $this->assertEqual($person->job, 'Presenter', t('Job set correctly.')); @@ -934,14 +966,20 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Confirm that we can merge-update a record successfully. */ function testMergeUpdate() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); - db_merge('test_people')->key(array('job' => 'Speaker'))->fields(array('age' => 31, 'name' => 'Tiffany'))->execute(); + db_merge('test_people') + ->key(array('job' => 'Speaker')) + ->fields(array( + 'age' => 31, + 'name' => 'Tiffany', + )) + ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after, t('Merge updated properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Speaker'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetch(); $this->assertEqual($person->name, 'Tiffany', t('Name set correctly.')); $this->assertEqual($person->age, 31, t('Age set correctly.')); $this->assertEqual($person->job, 'Speaker', t('Job set correctly.')); @@ -951,14 +989,21 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Confirm that we can merge-update a record successfully, with exclusion. */ function testMergeUpdateExcept() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); - db_merge('test_people')->key(array('job' => 'Speaker'))->fields(array('age' => 31, 'name' => 'Tiffany'))->updateExcept('age')->execute(); + db_merge('test_people') + ->key(array('job' => 'Speaker')) + ->fields(array( + 'age' => 31, + 'name' => 'Tiffany', + )) + ->updateExcept('age') + ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after, t('Merge updated properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Speaker'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetch(); $this->assertEqual($person->name, 'Tiffany', t('Name set correctly.')); $this->assertEqual($person->age, 30, t('Age skipped correctly.')); $this->assertEqual($person->job, 'Speaker', t('Job set correctly.')); @@ -968,14 +1013,21 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Confirm that we can merge-update a record successfully, with alternate replacement. */ function testMergeUpdateExplicit() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); - db_merge('test_people')->key(array('job' => 'Speaker'))->fields(array('age' => 31, 'name' => 'Tiffany'))->update(array('name' => 'Joe'))->execute(); + db_merge('test_people') + ->key(array('job' => 'Speaker')) + ->fields(array( + 'age' => 31, + 'name' => 'Tiffany', + )) + ->update(array('name' => 'Joe')) + ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after, t('Merge updated properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Speaker'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetch(); $this->assertEqual($person->name, 'Joe', t('Name set correctly.')); $this->assertEqual($person->age, 30, t('Age skipped correctly.')); $this->assertEqual($person->job, 'Speaker', t('Job set correctly.')); @@ -985,9 +1037,9 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Confirm that we can merge-update a record successfully, with expressions. */ function testMergeUpdateExpression() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); - $age_before = db_query("SELECT age FROM {test_people} WHERE job = 'Speaker'")->fetchField(); + $age_before = db_query('SELECT age FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetchField(); // This is a very contrived example, as I have no idea why you'd want to // change age this way, but that's beside the point. @@ -996,14 +1048,17 @@ class DatabaseMergeTestCase extends DatabaseTestCase { // which is what is supposed to happen. db_merge('test_people') ->key(array('job' => 'Speaker')) - ->fields(array('age' => 31, 'name' => 'Tiffany')) + ->fields(array( + 'age' => 31, + 'name' => 'Tiffany', + )) ->expression('age', 'age + :age', array(':age' => 4)) ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after, t('Merge updated properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Speaker'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetch(); $this->assertEqual($person->name, 'Tiffany', t('Name set correctly.')); $this->assertEqual($person->age, $age_before + 4, t('Age updated correctly.')); $this->assertEqual($person->job, 'Speaker', t('Job set correctly.')); @@ -1013,16 +1068,16 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Test that we can merge-insert without any update fields. */ function testMergeInsertWithoutUpdate() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); db_merge('test_people') ->key(array('job' => 'Presenter')) ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before + 1, $num_records_after, t('Merge inserted properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Presenter'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Presenter'))->fetch(); $this->assertEqual($person->name, '', t('Name set correctly.')); $this->assertEqual($person->age, 0, t('Age set correctly.')); $this->assertEqual($person->job, 'Presenter', t('Job set correctly.')); @@ -1032,16 +1087,16 @@ class DatabaseMergeTestCase extends DatabaseTestCase { * Confirm that we can merge-update without any update fields. */ function testMergeUpdateWithoutUpdate() { - $num_records_before = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_before = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); db_merge('test_people') ->key(array('job' => 'Speaker')) ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after, t('Merge skipped properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Speaker'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetch(); $this->assertEqual($person->name, 'Meredith', t('Name skipped correctly.')); $this->assertEqual($person->age, 30, t('Age skipped correctly.')); $this->assertEqual($person->job, 'Speaker', t('Job skipped correctly.')); @@ -1052,10 +1107,10 @@ class DatabaseMergeTestCase extends DatabaseTestCase { ->updateExcept(array('age')) ->execute(); - $num_records_after = db_query("SELECT COUNT(*) FROM {test_people}")->fetchField(); + $num_records_after = db_query('SELECT COUNT(*) FROM {test_people}')->fetchField(); $this->assertEqual($num_records_before, $num_records_after, t('Merge skipped properly.')); - $person = db_query("SELECT * FROM {test_people} WHERE job = :job", array(':job' => 'Speaker'))->fetch(); + $person = db_query('SELECT * FROM {test_people} WHERE job = :job', array(':job' => 'Speaker'))->fetch(); $this->assertEqual($person->name, 'Meredith', t('Name skipped correctly.')); $this->assertEqual($person->age, 30, t('Age skipped correctly.')); $this->assertEqual($person->job, 'Speaker', t('Job skipped correctly.')); @@ -1634,7 +1689,7 @@ class DatabaseSelectPagerDefaultTestCase extends DatabaseTestCase { // information forward to the actual query on the other side of the // HTTP request. $limit = 2; - $count = db_query("SELECT COUNT(*) FROM {test}")->fetchField(); + $count = db_query('SELECT COUNT(*) FROM {test}')->fetchField(); $correct_number = $limit; $num_pages = floor($count / $limit); @@ -1668,7 +1723,7 @@ class DatabaseSelectPagerDefaultTestCase extends DatabaseTestCase { // information forward to the actual query on the other side of the // HTTP request. $limit = 2; - $count = db_query("SELECT COUNT(*) FROM {test_task}")->fetchField(); + $count = db_query('SELECT COUNT(*) FROM {test_task}')->fetchField(); $correct_number = $limit; $num_pages = floor($count / $limit); @@ -2058,7 +2113,7 @@ class DatabaseRegressionTestCase extends DatabaseTestCase { 'job' => 'Dancer', ))->execute(); - $from_database = db_query("SELECT name FROM {test} WHERE name = :name", array(':name' => $name))->fetchField(); + $from_database = db_query('SELECT name FROM {test} WHERE name = :name', array(':name' => $name))->fetchField(); $this->assertIdentical($name, $from_database, t("The database handles UTF-8 characters cleanly.")); } @@ -2098,8 +2153,8 @@ class DatabaseLoggingTestCase extends DatabaseTestCase { function testEnableLogging() { Database::startLog('testing'); - db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25))->fetchCol(); - db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Ringo'))->fetchCol(); + db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25))->fetchCol(); + db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'))->fetchCol(); $queries = Database::getLog('testing', 'default'); @@ -2116,11 +2171,11 @@ class DatabaseLoggingTestCase extends DatabaseTestCase { function testEnableMultiLogging() { Database::startLog('testing1'); - db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25))->fetchCol(); + db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25))->fetchCol(); Database::startLog('testing2'); - db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Ringo'))->fetchCol(); + db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'))->fetchCol(); $queries1 = Database::getLog('testing1'); $queries2 = Database::getLog('testing2'); @@ -2140,9 +2195,9 @@ class DatabaseLoggingTestCase extends DatabaseTestCase { Database::startLog('testing1'); - db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25))->fetchCol(); + db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25))->fetchCol(); - db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Ringo'), array('target' => 'slave'));//->fetchCol(); + db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'), array('target' => 'slave'));//->fetchCol(); $queries1 = Database::getLog('testing1'); @@ -2161,14 +2216,14 @@ class DatabaseLoggingTestCase extends DatabaseTestCase { function testEnableTargetLoggingNoTarget() { Database::startLog('testing1'); - db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25))->fetchCol(); + db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25))->fetchCol(); // We use "fake" here as a target because any non-existent target will do. // However, because all of the tests in this class share a single page // request there is likely to be a target of "slave" from one of the other // unit tests, so we use a target here that we know with absolute certainty // does not exist. - db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Ringo'), array('target' => 'fake'))->fetchCol(); + db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'), array('target' => 'fake'))->fetchCol(); $queries1 = Database::getLog('testing1'); @@ -2189,11 +2244,11 @@ class DatabaseLoggingTestCase extends DatabaseTestCase { Database::startLog('testing1'); Database::startLog('testing1', 'test2'); - db_query("SELECT name FROM {test} WHERE age > :age", array(':age' => 25))->fetchCol(); + db_query('SELECT name FROM {test} WHERE age > :age', array(':age' => 25))->fetchCol(); $old_key = db_set_active('test2'); - db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'Ringo'), array('target' => 'slave'))->fetchCol(); + db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'Ringo'), array('target' => 'slave'))->fetchCol(); db_set_active($old_key); @@ -2230,7 +2285,7 @@ class DatabaseRangeQueryTestCase extends DrupalWebTestCase { $this->assertEqual(count($range_rows), 3, t('Range query work and return correct number of rows.')); // Test if return target data. - $raw_rows = db_query("SELECT name FROM {system} ORDER BY name")->fetchAll(); + $raw_rows = db_query('SELECT name FROM {system} ORDER BY name')->fetchAll(); $raw_rows = array_slice($raw_rows, 2, 3); $this->assertEqual($range_rows, $raw_rows, t('Range query work and return target data.')); } @@ -2306,7 +2361,13 @@ class DatabaseAnsiSyntaxTestCase extends DatabaseTestCase { * Test for ANSI string concatenation. */ function testBasicConcat() { - $result = db_query("SELECT 'This' || ' ' || 'is' || ' a ' || 'test.'"); + $result = db_query('SELECT :a1 || :a2 || :a3 || :a4 || :a5', array( + ':a1' => 'This', + ':a2' => ' ', + ':a3' => 'is', + ':a4' => ' a ', + ':a5' => 'test.', + )); $this->assertIdentical($result->fetchField(), 'This is a test.', t('Basic ANSI Concat works.')); } @@ -2314,17 +2375,14 @@ class DatabaseAnsiSyntaxTestCase extends DatabaseTestCase { * Test for ANSI string concatenation with field values. */ function testFieldConcat() { - $result = db_query("SELECT 'The age of ' || name || ' is ' || age || '.' FROM {test} WHERE age = :age", array(':age' => 25)); + $result = db_query('SELECT :a1 || name || :a2 || age || :a3 FROM {test} WHERE age = :age', array( + ':a1' => 'The age of ', + ':a2' => ' is ', + ':a3' => '.', + ':age' => 25, + )); $this->assertIdentical($result->fetchField(), 'The age of John is 25.', t('Field ANSI Concat works.')); } - - /** - * ANSI standard allows for double quotes to escape field names. - */ - function testQuotes() { - $result = db_query('SELECT "name" FROM {test} WHERE age = :age', array(':age' => 25)); - $this->assertIdentical($result->fetchField(), 'John', t('ANSI field quoting works.')); - } } /** @@ -2420,7 +2478,7 @@ class DatabaseQueryTestCase extends DatabaseTestCase { * Test that we can specify an array of values in the query by simply passing in an array. */ function testArraySubstitution() { - $names = db_query("SELECT name FROM {test} WHERE age IN (:ages) ORDER BY age", array(':ages' => array(25, 26, 27)))->fetchAll(); + $names = db_query('SELECT name FROM {test} WHERE age IN (:ages) ORDER BY age', array(':ages' => array(25, 26, 27)))->fetchAll(); $this->assertEqual(count($names), 3, t('Correct number of names returned')); } @@ -2591,9 +2649,9 @@ class DatabaseTransactionTestCase extends DatabaseTestCase { // Neither of the rows we inserted in the two transaction layers // should be present in the tables post-rollback. - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'DavidB'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DavidB'))->fetchField(); $this->assertNotIdentical($saved_age, '24', t('Cannot retrieve DavidB row after commit.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'DanielB'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DanielB'))->fetchField(); $this->assertNotIdentical($saved_age, '19', t('Cannot retrieve DanielB row after commit.')); } catch (Exception $e) { @@ -2617,9 +2675,9 @@ class DatabaseTransactionTestCase extends DatabaseTestCase { // Because our current database claims to not support transactions, // the inserted rows should be present despite the attempt to roll back. - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'DavidB'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DavidB'))->fetchField(); $this->assertIdentical($saved_age, '24', t('DavidB not rolled back, since transactions are not supported.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'DanielB'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DanielB'))->fetchField(); $this->assertIdentical($saved_age, '19', t('DanielB not rolled back, since transactions are not supported.')); } catch (Exception $e) { @@ -2639,9 +2697,9 @@ class DatabaseTransactionTestCase extends DatabaseTestCase { $this->transactionOuterLayer('A'); // Because we committed, both of the inserted rows should be present. - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'DavidA'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DavidA'))->fetchField(); $this->assertIdentical($saved_age, '24', t('Can retrieve DavidA row after commit.')); - $saved_age = db_query("SELECT age FROM {test} WHERE name = :name", array(':name' => 'DanielA'))->fetchField(); + $saved_age = db_query('SELECT age FROM {test} WHERE name = :name', array(':name' => 'DanielA'))->fetchField(); $this->assertIdentical($saved_age, '19', t('Can retrieve DanielA row after commit.')); } catch (Exception $e) { diff --git a/modules/simpletest/tests/error_test.module b/modules/simpletest/tests/error_test.module index e08c151b8..7ee5cca05 100644 --- a/modules/simpletest/tests/error_test.module +++ b/modules/simpletest/tests/error_test.module @@ -62,5 +62,5 @@ function error_test_trigger_exception() { */ function error_test_trigger_pdo_exception() { define('SIMPLETEST_COLLECT_ERRORS', FALSE); - db_query("SELECT * FROM bananas_are_awesome"); + db_query('SELECT * FROM bananas_are_awesome'); } diff --git a/modules/simpletest/tests/file.test b/modules/simpletest/tests/file.test index b68fef7dd..b5c1aa1ec 100644 --- a/modules/simpletest/tests/file.test +++ b/modules/simpletest/tests/file.test @@ -568,7 +568,7 @@ class FileSaveUploadTest extends FileHookTestCase { * Test the file_save_upload() function. */ function testNormal() { - $max_fid_after = db_result(db_query('SELECT MAX(fid) AS fid FROM {files}')); + $max_fid_after = db_query('SELECT MAX(fid) AS fid FROM {files}')->fetchField(); $this->assertTrue($max_fid_after > $this->maxFidBefore, t('A new file was created.')); $file1 = file_load($max_fid_after); $this->assertTrue($file1, t('Loaded the file.')); diff --git a/modules/simpletest/tests/menu.test b/modules/simpletest/tests/menu.test index 95674127e..a30a748c3 100644 --- a/modules/simpletest/tests/menu.test +++ b/modules/simpletest/tests/menu.test @@ -83,14 +83,14 @@ class MenuIncTestCase extends DrupalWebTestCase { $this->drupalLogin($admin_user); $sql = "SELECT menu_name FROM {menu_links} WHERE router_path = 'menu_name_test'"; - $name = db_result(db_query($sql)); + $name = db_query($sql)->fetchField(); $this->assertEqual($name, 'original', t('Menu name is "original".')); // Force a menu rebuild by going to the modules page. $this->drupalGet('admin/build/modules', array('query' => array("hook_menu_name" => 'changed'))); $sql = "SELECT menu_name FROM {menu_links} WHERE router_path = 'menu_name_test'"; - $name = db_result(db_query($sql)); + $name = db_query($sql)->fetchField(); $this->assertEqual($name, 'changed', t('Menu name was successfully changed after rebuild.')); } @@ -98,9 +98,9 @@ class MenuIncTestCase extends DrupalWebTestCase { * Tests for menu hiearchy. */ function testMenuHiearchy() { - $parent_link = db_query("SELECT * FROM {menu_links} WHERE link_path = :link_path", array(':link_path' => 'menu-test/hierarchy/parent'))->fetchAssoc(); - $child_link = db_query("SELECT * FROM {menu_links} WHERE link_path = :link_path", array(':link_path' => 'menu-test/hierarchy/parent/child'))->fetchAssoc(); - $unattached_child_link = db_query("SELECT * FROM {menu_links} WHERE link_path = :link_path", array(':link_path' => 'menu-test/hierarchy/parent/child2/child'))->fetchAssoc(); + $parent_link = db_query('SELECT * FROM {menu_links} WHERE link_path = :link_path', array(':link_path' => 'menu-test/hierarchy/parent'))->fetchAssoc(); + $child_link = db_query('SELECT * FROM {menu_links} WHERE link_path = :link_path', array(':link_path' => 'menu-test/hierarchy/parent/child'))->fetchAssoc(); + $unattached_child_link = db_query('SELECT * FROM {menu_links} WHERE link_path = :link_path', array(':link_path' => 'menu-test/hierarchy/parent/child2/child'))->fetchAssoc(); $this->assertEqual($child_link['plid'], $parent_link['mlid'], t('The parent of a directly attached child is correct.')); $this->assertEqual($unattached_child_link['plid'], $parent_link['mlid'], t('The parent of a non-directly attached child is correct.')); @@ -142,14 +142,14 @@ class MenuRebuildTestCase extends DrupalWebTestCase { */ function testMenuRebuildByVariable() { // Check if 'admin' path exists. - $admin_exists = db_result(db_query("SELECT path from {menu_router} WHERE path = 'admin'")); + $admin_exists = db_query('SELECT path from {menu_router} WHERE path = :path', array(':path' => 'admin'))->fetchField(); $this->assertEqual($admin_exists, 'admin', t("The path 'admin/' exists prior to deleting.")); // Delete the path item 'admin', and test that the path doesn't exist in the database. $delete = db_delete('menu_router') ->condition('path', 'admin') ->execute(); - $admin_exists = db_result(db_query("SELECT path from {menu_router} WHERE path = 'admin'")); + $admin_exists = db_query('SELECT path from {menu_router} WHERE path = :path', array(':path' => 'admin'))->fetchField(); $this->assertFalse($admin_exists, t("The path 'admin/' has been deleted and doesn't exist in the database.")); // Now we enable the rebuild variable and trigger menu_execute_active_handler() @@ -157,7 +157,7 @@ class MenuRebuildTestCase extends DrupalWebTestCase { variable_set('menu_rebuild_needed', TRUE); // menu_execute_active_handler() should trigger the rebuild. $this->drupalGet('<front>'); - $admin_exists = db_result(db_query("SELECT path from {menu_router} WHERE path = 'admin'")); + $admin_exists = db_query('SELECT path from {menu_router} WHERE path = :path', array(':path' => 'admin'))->fetchField(); $this->assertEqual($admin_exists, 'admin', t("The menu has been rebuilt, the path 'admin' now exists again.")); } diff --git a/modules/simpletest/tests/module.test b/modules/simpletest/tests/module.test index fa241b8df..87f1a1544 100644 --- a/modules/simpletest/tests/module.test +++ b/modules/simpletest/tests/module.test @@ -37,7 +37,11 @@ class ModuleUnitTest extends DrupalWebTestCase { $this->assertModuleList($base_module_list, t('After adding a module')); // Try to mess with the module weights. - db_query("UPDATE {system} SET weight = 20 WHERE name = 'path' AND type = 'module'"); + db_update('system') + ->fields(array('weight' => 20)) + ->condition('name', 'path') + ->condition('type', 'module') + ->execute(); // Reset the module list. module_list(TRUE); // Move path at the end of the array. diff --git a/modules/simpletest/tests/registry.test b/modules/simpletest/tests/registry.test index 0ef763920..97608bf8b 100644 --- a/modules/simpletest/tests/registry.test +++ b/modules/simpletest/tests/registry.test @@ -24,7 +24,7 @@ class RegistryParseFileTestCase extends DrupalWebTestCase { function testRegistryParseFile() { _registry_parse_file($this->fileName, $this->getFileContents()); foreach (array('functionName', 'className', 'interfaceName') as $resource) { - $foundName = db_result(db_query("SELECT name FROM {registry} WHERE name = '%s'", $this->$resource)); + $foundName = db_query('SELECT name FROM {registry} WHERE name = :name', array(':name' => $this->$resource))->fetchField(); $this->assertTrue($this->$resource == $foundName, t('Resource "@resource" found.', array('@resource' => $this->$resource))); } } @@ -75,11 +75,22 @@ class RegistryParseFilesTestCase extends DrupalWebTestCase { if ($fileType == 'existing_changed') { // Insert a record with a dodgy md5. $this->$fileType->fakeMD5 = md5($this->$fileType->contents . rand()); - db_query("INSERT INTO {registry_file} (md5, filename) VALUES ('%s', '%s')", $this->$fileType->fakeMD5, $this->$fileType->fileName); + db_insert('registry_file') + ->fields(array( + 'md5' => $this->$fileType->fakeMD5, + 'filename' => $this->$fileType->fileName, + )) + ->execute(); // Insert some fake resource records. foreach (array('function', 'class', 'interface') as $type) { - db_query("INSERT INTO {registry} (name, type, filename) VALUES ('%s', '%s', '%s')", $type . md5(rand()), $type, $this->$fileType->fileName); + db_insert('registry') + ->fields(array( + 'name' => $type . md5(rand()), + 'type' => $type, + 'filename' => $this->$fileType->fileName, + )) + ->execute(); } } } @@ -93,11 +104,11 @@ class RegistryParseFilesTestCase extends DrupalWebTestCase { foreach ($this->fileTypes as $fileType) { // Test that we have all the right resources. foreach (array('functionName', 'className', 'interfaceName') as $resource) { - $foundName = db_result(db_query("SELECT name FROM {registry} WHERE name = '%s'", $this->$fileType->$resource)); + $foundName = db_query('SELECT name FROM {registry} WHERE name = :name', array(':name' => $this->$fileType->$resource))->fetchField(); $this->assertTrue($this->$fileType->$resource == $foundName, t('Resource "@resource" found.', array('@resource' => $this->$fileType->$resource))); } // Test that we have the right md5. - $md5 = db_result(db_query("SELECT md5 FROM {registry_file} WHERE filename = '%s'", $this->$fileType->fileName)); + $md5 = db_query('SELECT md5 FROM {registry_file} WHERE filename = :filename', array(':filename' => $this->$fileType->fileName))->fetchField(); $this->assertTrue(md5($this->$fileType->contents) == $md5, t('MD5 for "@filename" matched.' . $fileType . $md5, array('@filename' => $this->$fileType->fileName))); } } diff --git a/modules/simpletest/tests/schema.test b/modules/simpletest/tests/schema.test index 716bef282..687fc67fd 100644 --- a/modules/simpletest/tests/schema.test +++ b/modules/simpletest/tests/schema.test @@ -103,7 +103,9 @@ class SchemaTestCase extends DrupalWebTestCase { function tryInsert($table = 'test_table') { try { - db_query("INSERT INTO {" . $table . "} (id) VALUES (:id)", array(':id' => mt_rand(10, 20))); + db_insert($table) + ->fields(array('id' => mt_rand(10, 20))) + ->execute(); return TRUE; } catch (Exception $e) { diff --git a/modules/simpletest/tests/taxonomy_test.module b/modules/simpletest/tests/taxonomy_test.module index 2fa05b15c..beda61a5d 100644 --- a/modules/simpletest/tests/taxonomy_test.module +++ b/modules/simpletest/tests/taxonomy_test.module @@ -22,7 +22,12 @@ function taxonomy_test_taxonomy_term_insert($term) { if (!empty($term->antonyms)) { foreach (explode ("\n", str_replace("\r", '', $term->antonyms)) as $antonym) { if ($antonym) { - db_insert('term_antonym')->fields(array('tid' => $term->tid, 'name' => rtrim($antonym)))->execute(); + db_insert('term_antonym') + ->fields(array( + 'tid' => $term->tid, + 'name' => rtrim($antonym), + )) + ->execute(); } } } @@ -36,7 +41,12 @@ function taxonomy_test_taxonomy_term_update($term) { if (!empty($term->antonyms)) { foreach (explode ("\n", str_replace("\r", '', $term->antonyms)) as $antonym) { if ($antonym) { - db_insert('term_antonym')->fields(array('tid' => $term->tid, 'name' => rtrim($antonym)))->execute(); + db_insert('term_antonym') + ->fields(array( + 'tid' => $term->tid, + 'name' => rtrim($antonym), + )) + ->execute(); } } } @@ -46,7 +56,9 @@ function taxonomy_test_taxonomy_term_update($term) { * Implement hook_taxonomy_term_delete(). */ function taxonomy_test_taxonomy_term_delete($term) { - db_delete('term_antonym')->condition('tid', $term->tid)->execute(); + db_delete('term_antonym') + ->condition('tid', $term->tid) + ->execute(); } /** |