function FieldDataCountTest::testCountWithIndex0

Same name and namespace in other branches
  1. 9 core/modules/field/tests/src/Kernel/FieldDataCountTest.php \Drupal\Tests\field\Kernel\FieldDataCountTest::testCountWithIndex0()
  2. 8.9.x core/modules/field/tests/src/Kernel/FieldDataCountTest.php \Drupal\Tests\field\Kernel\FieldDataCountTest::testCountWithIndex0()
  3. 11.x core/modules/field/tests/src/Kernel/FieldDataCountTest.php \Drupal\Tests\field\Kernel\FieldDataCountTest::testCountWithIndex0()

Verify that we can count a table that contains an entry with index 0.

File

core/modules/field/tests/src/Kernel/FieldDataCountTest.php, line 149

Class

FieldDataCountTest
Tests the count of field data records.

Namespace

Drupal\Tests\field\Kernel

Code

public function testCountWithIndex0() : void {
  // Create a field that will require dedicated storage.
  /** @var \Drupal\field\Entity\FieldStorageConfig $field_storage */
  $field_storage = FieldStorageConfig::create([
    'field_name' => 'field_int',
    'entity_type' => 'user',
    'type' => 'integer',
    'cardinality' => 2,
  ]);
  $field_storage->save();
  FieldConfig::create([
    'field_storage' => $field_storage,
    'bundle' => 'user',
  ])->save();
  // Create an entry for the anonymous user, who has user ID 0.
  $user = $this->storageUser
    ->create([
    'uid' => 0,
    'name' => 'anonymous',
    'mail' => NULL,
    'status' => FALSE,
    'field_int' => 42,
  ]);
  $user->save();
  // Test shared table storage.
  $storage = $user->getFieldDefinition('name')
    ->getFieldStorageDefinition();
  $this->assertTrue($this->storageUser
    ->countFieldData($storage, TRUE));
  // Test dedicated table storage.
  $storage = $user->getFieldDefinition('field_int')
    ->getFieldStorageDefinition();
  $this->assertTrue($this->storageUser
    ->countFieldData($storage, TRUE));
}

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