? log.txt ? modules/simpletest/tests/343502.test ? modules/simpletest/tests/path.test ? modules/system/system.http.inc Index: includes/database/query.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/database/query.inc,v retrieving revision 1.7 diff -u -p -r1.7 query.inc --- includes/database/query.inc 13 Nov 2008 21:08:15 -0000 1.7 +++ includes/database/query.inc 6 Dec 2008 14:57:25 -0000 @@ -793,7 +793,7 @@ class UpdateQuery extends Query implemen * * @var array */ - protected $fields; + protected $fields = array(); /** * An array of values to update to. Index: modules/simpletest/tests/database_test.test =================================================================== RCS file: /cvs/drupal/drupal/modules/simpletest/tests/database_test.test,v retrieving revision 1.23 diff -u -p -r1.23 database_test.test --- modules/simpletest/tests/database_test.test 26 Nov 2008 13:48:49 -0000 1.23 +++ modules/simpletest/tests/database_test.test 6 Dec 2008 14:57:50 -0000 @@ -799,6 +799,21 @@ class DatabaseUpdateComplexTestCase exte $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')); + } } /**