class FileCopyTest
Same name in this branch
- 9 core/modules/migrate/tests/src/Kernel/process/FileCopyTest.php \Drupal\Tests\migrate\Kernel\process\FileCopyTest
- 9 core/tests/Drupal/KernelTests/Core/File/FileCopyTest.php \Drupal\KernelTests\Core\File\FileCopyTest
Same name and namespace in other branches
- 7.x modules/simpletest/tests/file.test \FileCopyTest
- 11.x core/modules/migrate/tests/src/Unit/process/FileCopyTest.php \Drupal\Tests\migrate\Unit\process\FileCopyTest
- 11.x core/modules/migrate/tests/src/Kernel/process/FileCopyTest.php \Drupal\Tests\migrate\Kernel\process\FileCopyTest
- 11.x core/tests/Drupal/KernelTests/Core/File/FileCopyTest.php \Drupal\KernelTests\Core\File\FileCopyTest
Tests the file copy process plugin.
@group migrate
@coversDefaultClass \Drupal\migrate\Plugin\migrate\process\FileCopy
Hierarchy
- class \Drupal\Tests\UnitTestCase uses \Drupal\Tests\Traits\PhpUnitWarnings, \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait implements \PHPUnit\Framework\TestCase
- class \Drupal\Tests\migrate\Unit\MigrateTestCase implements \Drupal\Tests\UnitTestCase
- class \Drupal\Tests\migrate\Unit\process\MigrateProcessTestCase implements \Drupal\Tests\migrate\Unit\MigrateTestCase
- class \Drupal\Tests\migrate\Unit\process\FileCopyTest implements \Drupal\Tests\migrate\Unit\process\MigrateProcessTestCase
- class \Drupal\Tests\migrate\Unit\process\MigrateProcessTestCase implements \Drupal\Tests\migrate\Unit\MigrateTestCase
- class \Drupal\Tests\migrate\Unit\MigrateTestCase implements \Drupal\Tests\UnitTestCase
Expanded class hierarchy of FileCopyTest
File
-
core/
modules/ migrate/ tests/ src/ Unit/ process/ FileCopyTest.php, line 17
Namespace
Drupal\Tests\migrate\Unit\processView source
class FileCopyTest extends MigrateProcessTestCase {
/**
* Tests that the plugin constructor correctly sets the configuration.
*
* @dataProvider providerFileProcessBaseConstructor
*
* @param array $configuration
* The plugin configuration.
* @param $expected
* The expected value of the plugin configuration.
*/
public function testFileProcessBaseConstructor($configuration, $expected) {
$this->assertPlugin($configuration, $expected);
}
/**
* Data provider for testFileProcessBaseConstructor.
*/
public function providerFileProcessBaseConstructor() {
return [
[
[
'file_exists' => 'replace',
],
FileSystemInterface::EXISTS_REPLACE,
],
[
[
'file_exists' => 'rename',
],
FileSystemInterface::EXISTS_RENAME,
],
[
[
'file_exists' => 'use existing',
],
FileSystemInterface::EXISTS_ERROR,
],
[
[
'file_exists' => 'foobar',
],
FileSystemInterface::EXISTS_REPLACE,
],
[
[],
FileSystemInterface::EXISTS_REPLACE,
],
];
}
/**
* Creates a TestFileCopy process plugin.
*
* @param array $configuration
* The plugin configuration.
* @param int $expected
* The expected value of the plugin configuration.
*
* @internal
*/
protected function assertPlugin(array $configuration, int $expected) : void {
$stream_wrapper_manager = $this->prophesize(StreamWrapperManagerInterface::class)
->reveal();
$file_system = $this->prophesize(FileSystemInterface::class)
->reveal();
$download_plugin = $this->prophesize(MigrateProcessInterface::class)
->reveal();
$this->plugin = new TestFileCopy($configuration, 'test', [], $stream_wrapper_manager, $file_system, $download_plugin);
$plugin_config = $this->plugin
->getConfiguration();
$this->assertArrayHasKey('file_exists', $plugin_config);
$this->assertSame($expected, $plugin_config['file_exists']);
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.