Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
Total | |
0.00% |
0 / 1 |
|
66.67% |
2 / 3 |
CRAP | |
66.67% |
8 / 12 |
TestSqlIdMap | |
0.00% |
0 / 1 |
|
66.67% |
2 / 3 |
7.33 | |
66.67% |
8 / 12 |
__construct | |
100.00% |
1 / 1 |
1 | |
100.00% |
3 / 3 |
|||
getDatabase | |
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
|||
getFieldSchema | |
0.00% |
0 / 1 |
6.00 | |
50.00% |
4 / 8 |
<?php | |
/** | |
* @file | |
* Contains \Drupal\Tests\migrate\Unit\TestSqlIdMap. | |
*/ | |
namespace Drupal\Tests\migrate\Unit; | |
use Drupal\Core\Database\Connection; | |
use Drupal\migrate\Entity\MigrationInterface; | |
use Drupal\migrate\MigrateException; | |
use Drupal\migrate\Plugin\migrate\id_map\Sql; | |
use Symfony\Component\EventDispatcher\EventDispatcherInterface; | |
/** | |
* Defines a SQL ID map for use in tests. | |
*/ | |
class TestSqlIdMap extends Sql implements \Iterator { | |
/** | |
* Constructs a TestSqlIdMap object. | |
* | |
* @param \Drupal\Core\Database\Connection $database | |
* The database. | |
* @param array $configuration | |
* The configuration. | |
* @param string $plugin_id | |
* The plugin ID for the migration process to do. | |
* @param mixed $plugin_definition | |
* The configuration for the plugin. | |
* @param \Drupal\migrate\Entity\MigrationInterface $migration | |
* The migration to do. | |
* @param \Symfony\Component\EventDispatcher\EventDispatcherInterface $event_dispatcher | |
* The event dispatcher service. | |
*/ | |
public function __construct(Connection $database, array $configuration, $plugin_id, $plugin_definition, MigrationInterface $migration, EventDispatcherInterface $event_dispatcher) { | |
$this->database = $database; | |
parent::__construct($configuration, $plugin_id, $plugin_definition, $migration, $event_dispatcher); | |
} | |
/** | |
* {@inheritdoc} | |
*/ | |
public function getDatabase() { | |
return parent::getDatabase(); | |
} | |
/** | |
* Gets the field schema. | |
* | |
* @param array $id_definition | |
* An array defining the field, with a key 'type'. | |
* | |
* @return array | |
* A field schema depending on value of key 'type'. An empty array is | |
* returned if 'type' is not defined. | |
* | |
* @throws \Drupal\migrate\MigrateException | |
*/ | |
protected function getFieldSchema(array $id_definition) { | |
if (!isset($id_definition['type'])) { | |
return array(); | |
} | |
switch ($id_definition['type']) { | |
case 'integer': | |
return array( | |
'type' => 'int', | |
'not null' => TRUE, | |
); | |
case 'string': | |
return array( | |
'type' => 'varchar', | |
'length' => 255, | |
'not null' => FALSE, | |
); | |
default: | |
throw new MigrateException($id_definition['type'] . ' not supported'); | |
} | |
} | |
} |