Issue #2628418 by neclimdul, quietone: Test coverage for FieldTypeDefaults process plugin
parent
b1c7365ef4
commit
cf0d367b98
|
@ -30,7 +30,7 @@ class FieldTypeDefaults extends ProcessPluginBase {
|
||||||
$value = 'datetime_default';
|
$value = 'datetime_default';
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
throw new MigrateException(sprintf('Failed to lookup %s in the static map.', var_export($value, TRUE)));
|
throw new MigrateException(sprintf('Failed to lookup field type %s in the static map.', var_export($value, TRUE)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $value;
|
return $value;
|
||||||
|
|
|
@ -0,0 +1,59 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @file
|
||||||
|
* Contains \Drupal\Tests\field\Unit\Plugin\migrate\process\d6\FieldTypeDefaultsTest.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Drupal\Tests\field\Unit\Plugin\migrate\process\d6;
|
||||||
|
|
||||||
|
use Drupal\field\Plugin\migrate\process\d6\FieldTypeDefaults;
|
||||||
|
use Drupal\migrate\MigrateException;
|
||||||
|
use Drupal\Tests\migrate\Unit\process\MigrateProcessTestCase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests D6 fields defaults.
|
||||||
|
*
|
||||||
|
* @coversDefaultClass \Drupal\field\Plugin\migrate\process\d6\FieldTypeDefaults
|
||||||
|
* @group field
|
||||||
|
*/
|
||||||
|
class FieldTypeDefaultsTest extends MigrateProcessTestCase {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function setUp() {
|
||||||
|
parent::setUp();
|
||||||
|
$this->plugin = new FieldTypeDefaults([], 'field_type_defaults', []);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests various default cases.
|
||||||
|
*
|
||||||
|
* @covers ::transform
|
||||||
|
*/
|
||||||
|
public function testDefaults() {
|
||||||
|
$this->row->expects($this->once())
|
||||||
|
->method('getSourceProperty')
|
||||||
|
->willReturn('date');
|
||||||
|
|
||||||
|
// Assert common values are passed through without modification.
|
||||||
|
$this->assertNull($this->plugin->transform(NULL, $this->migrateExecutable, $this->row, 'property'));
|
||||||
|
$this->assertEquals('string', $this->plugin->transform('string', $this->migrateExecutable, $this->row, 'property'));
|
||||||
|
$this->assertEquals(1234, $this->plugin->transform(1234, $this->migrateExecutable, $this->row, 'property'));
|
||||||
|
// Assert that an array checks that this is a date field(above mock assert)
|
||||||
|
// and returns "datetime_default".
|
||||||
|
$this->assertEquals('datetime_default', $this->plugin->transform([], $this->migrateExecutable, $this->row, 'property'));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests an exception is thrown when the input is not a date field.
|
||||||
|
*
|
||||||
|
* @covers ::transform
|
||||||
|
*/
|
||||||
|
public function testDefaultsException() {
|
||||||
|
$this->setExpectedException(MigrateException::class,
|
||||||
|
sprintf('Failed to lookup field type %s in the static map.', var_export([], TRUE)));
|
||||||
|
$this->plugin->transform([], $this->migrateExecutable, $this->row, 'property');
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue