You are here

protected function TestSqlIdMap::getFieldSchema in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/migrate/tests/src/Unit/TestSqlIdMap.php \Drupal\Tests\migrate\Unit\TestSqlIdMap::getFieldSchema()

Gets the field schema.

Parameters

array $id_definition: An array defining the field, with a key 'type'.

Return value

array A field schema depending on value of key 'type'. An empty array is returned if 'type' is not defined.

Throws

\Drupal\migrate\MigrateException

Overrides Sql::getFieldSchema

1 method overrides TestSqlIdMap::getFieldSchema()
SqlIdMapTest::getFieldSchema in core/modules/migrate/tests/src/Kernel/Plugin/id_map/SqlTest.php
Gets the field schema.

File

core/modules/migrate/tests/src/Unit/TestSqlIdMap.php, line 61

Class

TestSqlIdMap
Defines a SQL ID map for use in tests.

Namespace

Drupal\Tests\migrate\Unit

Code

protected function getFieldSchema(array $id_definition) {
  if (!isset($id_definition['type'])) {
    return [];
  }
  switch ($id_definition['type']) {
    case 'integer':
      return [
        'type' => 'int',
        'not null' => TRUE,
      ];
    case 'string':
      return [
        'type' => 'varchar',
        'length' => 255,
        'not null' => FALSE,
      ];
    default:
      throw new MigrateException($id_definition['type'] . ' not supported');
  }
}