function DatabaseInsertDefaultsTestCase::testDefaultEmptyInsert

Test that no action will be preformed if no fields are specified.

File

modules/simpletest/tests/database_test.test, line 794

Class

DatabaseInsertDefaultsTestCase
Insert tests for "database default" values.

Code

function testDefaultEmptyInsert() {
    $num_records_before = (int) db_query('SELECT COUNT(*) FROM {test}')->fetchField();
    try {
        $result = db_insert('test')->execute();
        // This is only executed if no exception has been thrown.
        $this->fail('Expected exception NoFieldsException has not been thrown.');
    } catch (NoFieldsException $e) {
        $this->pass('Expected exception NoFieldsException has been thrown.');
    }
    $num_records_after = (int) db_query('SELECT COUNT(*) FROM {test}')->fetchField();
    $this->assertIdentical($num_records_before, $num_records_after, 'Do nothing as no fields are specified.');
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.