You are here

function UpdateLobTest::testUpdateOneBlob in Zircon Profile 8.0

Same name and namespace in other branches
  1. 8 core/modules/system/src/Tests/Database/UpdateLobTest.php \Drupal\system\Tests\Database\UpdateLobTest::testUpdateOneBlob()

Confirms that we can update a blob column.

File

core/modules/system/src/Tests/Database/UpdateLobTest.php, line 20
Contains \Drupal\system\Tests\Database\UpdateLobTest.

Class

UpdateLobTest
Tests the Update query builder with LOB fields.

Namespace

Drupal\system\Tests\Database

Code

function testUpdateOneBlob() {
  $data = "This is\0a test.";
  $this
    ->assertTrue(strlen($data) === 15, 'Test data contains a NULL.');
  $id = db_insert('test_one_blob')
    ->fields(array(
    'blob1' => $data,
  ))
    ->execute();
  $data .= $data;
  db_update('test_one_blob')
    ->condition('id', $id)
    ->fields(array(
    'blob1' => $data,
  ))
    ->execute();
  $r = db_query('SELECT * FROM {test_one_blob} WHERE id = :id', array(
    ':id' => $id,
  ))
    ->fetchAssoc();
  $this
    ->assertTrue($r['blob1'] === $data, format_string('Can update a blob: id @id, @data.', array(
    '@id' => $id,
    '@data' => serialize($r),
  )));
}