Issue #2807109 by phenaproxima: Convert Action's Migrate source tests to new base class
parent
8bbdbedd69
commit
9c59104c5a
|
@ -0,0 +1,62 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Drupal\Tests\action\Kernel\Plugin\migrate\source;
|
||||||
|
|
||||||
|
use Drupal\Tests\migrate\Kernel\MigrateSqlSourceTestBase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests actions source plugin.
|
||||||
|
*
|
||||||
|
* @covers \Drupal\action\Plugin\migrate\source\Action
|
||||||
|
* @group action
|
||||||
|
*/
|
||||||
|
class ActionTest extends MigrateSqlSourceTestBase {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public static $modules = ['action', 'migrate_drupal'];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function providerSource() {
|
||||||
|
$tests = [];
|
||||||
|
|
||||||
|
$tests[0][0]['actions'] = [
|
||||||
|
[
|
||||||
|
'aid' => 'Redirect to node list page',
|
||||||
|
'type' => 'system',
|
||||||
|
'callback' => 'system_goto_action',
|
||||||
|
'parameters' => 'a:1:{s:3:"url";s:4:"node";}',
|
||||||
|
'description' => 'Redirect to node list page',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'aid' => 'Test notice email',
|
||||||
|
'type' => 'system',
|
||||||
|
'callback' => 'system_send_email_action',
|
||||||
|
'parameters' => 'a:3:{s:9:"recipient";s:7:"%author";s:7:"subject";s:4:"Test";s:7:"message";s:4:"Test',
|
||||||
|
'description' => 'Test notice email',
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'aid' => 'comment_publish_action',
|
||||||
|
'type' => 'comment',
|
||||||
|
'callback' => 'comment_publish_action',
|
||||||
|
'parameters' => NULL,
|
||||||
|
'description' => NULL,
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'aid' => 'node_publish_action',
|
||||||
|
'type' => 'comment',
|
||||||
|
'callback' => 'node_publish_action',
|
||||||
|
'parameters' => NULL,
|
||||||
|
'description' => NULL,
|
||||||
|
],
|
||||||
|
];
|
||||||
|
// The expected results are identical to the source data.
|
||||||
|
$tests[0][1] = $tests[0][0]['actions'];
|
||||||
|
|
||||||
|
return $tests;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -1,68 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace Drupal\Tests\action\Unit\Plugin\migrate\source;
|
|
||||||
|
|
||||||
use Drupal\Tests\migrate\Unit\MigrateSqlSourceTestCase;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Tests actions source plugin.
|
|
||||||
*
|
|
||||||
* @group action
|
|
||||||
*/
|
|
||||||
class ActionTest extends MigrateSqlSourceTestCase {
|
|
||||||
|
|
||||||
// The plugin system is not working during unit testing so the source plugin
|
|
||||||
// class needs to be manually specified.
|
|
||||||
const PLUGIN_CLASS = 'Drupal\action\Plugin\migrate\source\Action';
|
|
||||||
|
|
||||||
// The fake Migration configuration entity.
|
|
||||||
protected $migrationConfiguration = array(
|
|
||||||
// The ID of the entity, can be any string.
|
|
||||||
'id' => 'test',
|
|
||||||
'source' => array(
|
|
||||||
'plugin' => 'action',
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
// We need to set up the database contents; it's easier to do that below.
|
|
||||||
|
|
||||||
protected $expectedResults = array(
|
|
||||||
array(
|
|
||||||
'aid' => 'Redirect to node list page',
|
|
||||||
'type' => 'system',
|
|
||||||
'callback' => 'system_goto_action',
|
|
||||||
'parameters' => 'a:1:{s:3:"url";s:4:"node";}',
|
|
||||||
'description' => 'Redirect to node list page',
|
|
||||||
),
|
|
||||||
array(
|
|
||||||
'aid' => 'Test notice email',
|
|
||||||
'type' => 'system',
|
|
||||||
'callback' => 'system_send_email_action',
|
|
||||||
'parameters' => 'a:3:{s:9:"recipient";s:7:"%author";s:7:"subject";s:4:"Test";s:7:"message";s:4:"Test',
|
|
||||||
'description' => 'Test notice email',
|
|
||||||
),
|
|
||||||
array(
|
|
||||||
'aid' => 'comment_publish_action',
|
|
||||||
'type' => 'comment',
|
|
||||||
'callback' => 'comment_publish_action',
|
|
||||||
'parameters' => NULL,
|
|
||||||
'description' => NULL,
|
|
||||||
),
|
|
||||||
array(
|
|
||||||
'aid' => 'node_publish_action',
|
|
||||||
'type' => 'comment',
|
|
||||||
'callback' => 'node_publish_action',
|
|
||||||
'parameters' => NULL,
|
|
||||||
'description' => NULL,
|
|
||||||
),
|
|
||||||
);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* {@inheritdoc}
|
|
||||||
*/
|
|
||||||
protected function setUp() {
|
|
||||||
$this->databaseContents['actions'] = $this->expectedResults;
|
|
||||||
parent::setUp();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
Loading…
Reference in New Issue