summaryrefslogtreecommitdiff
path: root/modules/simpletest/tests/database_test.test
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2008-12-26 14:23:38 +0000
committerDries Buytaert <dries@buytaert.net>2008-12-26 14:23:38 +0000
commit0d100b57dcffe54ec7f46d8f577a4c26fcf34202 (patch)
treeffcfb6c4cb5e1f9481479620c87b37a2c7b6ebec /modules/simpletest/tests/database_test.test
parentfc063806de3ded56d1c3d78a49e8a60de7a7fe1c (diff)
downloadbrdo-0d100b57dcffe54ec7f46d8f577a4c26fcf34202.tar.gz
brdo-0d100b57dcffe54ec7f46d8f577a4c26fcf34202.tar.bz2
- Patch #332002 by Crell et al: MergeQuery should refuse to execute if there are no key fields. With tests.
Diffstat (limited to 'modules/simpletest/tests/database_test.test')
-rw-r--r--modules/simpletest/tests/database_test.test20
1 files changed, 20 insertions, 0 deletions
diff --git a/modules/simpletest/tests/database_test.test b/modules/simpletest/tests/database_test.test
index a725b2eee..d6a3b305f 100644
--- a/modules/simpletest/tests/database_test.test
+++ b/modules/simpletest/tests/database_test.test
@@ -957,6 +957,26 @@ class DatabaseMergeTestCase extends DatabaseTestCase {
$this->assertEqual($person->age, $age_before + 4, t('Age updated correctly.'));
$this->assertEqual($person->job, 'Speaker', t('Job set correctly.'));
}
+
+ /**
+ * Test that an invalid merge query throws an exception like it is supposed to.
+ */
+ function testInvalidMerge() {
+ try {
+ // This query should die because there is no key field specified.
+ db_merge('test_people')
+ ->fields(array(
+ 'age' => 31,
+ 'name' => 'Tiffany',
+ ))
+ ->execute();
+ }
+ catch (InvalidMergeQueryException $e) {
+ $this->pass(t('InvalidMergeQueryException thrown for invalid query.'));
+ return;
+ }
+ $this->fail(t('No InvalidMergeQueryException thrown'));
+ }
}
/**