From 6d84974ff5b8f8a4f256566174f9e814960f737c Mon Sep 17 00:00:00 2001 From: Angie Byron Date: Sun, 7 Dec 2008 07:51:55 +0000 Subject: #343620 by Dave Reid: Fix db_update() failure on expression-only SQL (with test). --- modules/simpletest/tests/database_test.test | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'modules/simpletest/tests/database_test.test') diff --git a/modules/simpletest/tests/database_test.test b/modules/simpletest/tests/database_test.test index 1319f7c19..92baa1df6 100644 --- a/modules/simpletest/tests/database_test.test +++ b/modules/simpletest/tests/database_test.test @@ -799,6 +799,21 @@ class DatabaseUpdateComplexTestCase extends DatabaseTestCase { $this->assertTrue(FALSE, $e->getMessage()); } } + + /** + * Test update with only expression values. + */ + function testUpdateOnlyExpression() { + $before_age = db_query("SELECT age FROM {test} WHERE 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(); + $this->assertEqual($before_age + 4, $after_age, t('Age updated correctly')); + } } /** -- cgit v1.2.3