You are here

function DatabaseInsertDefaultsTestCase::testDefaultEmptyInsert in Drupal 7

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

File

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

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.');
}