PathRedirectTest.php in Redirect 8
File
tests/src/Kernel/Migrate/d7/PathRedirectTest.php
View source
<?php
namespace Drupal\Tests\redirect\Kernel\Migrate\d7;
use Drupal\redirect\Entity\Redirect;
use Drupal\Tests\migrate_drupal\Kernel\MigrateDrupalTestBase;
class PathRedirectTest extends MigrateDrupalTestBase {
public static $modules = [
'redirect',
'link',
'path_alias',
];
protected function setUp() {
parent::setUp();
$this
->installEntitySchema('redirect');
$this
->loadFixture(__DIR__ . '/../../../../fixtures/drupal7.php');
$this
->executeMigration('d7_path_redirect');
}
protected function assertEntity($id, $source_url, $redirect_url, $status_code) {
$redirect = Redirect::load($id);
$this
->assertSame($this
->getMigration('d7_path_redirect')
->getIdMap()
->lookupDestinationIds([
$id,
]), [
[
$redirect
->id(),
],
]);
$this
->assertSame($source_url, $redirect
->getSourceUrl());
$this
->assertSame($redirect_url, $redirect
->getRedirectUrl()
->toUriString());
$this
->assertSame($status_code, $redirect
->getStatusCode());
}
public function testPathRedirect() {
$this
->assertEntity(5, '/test/source/url', 'base:test/redirect/url', '301');
$this
->assertEntity(7, '/test/source/url2', 'http://test/external/redirect/url?foo=bar&biz=buz#fragment-1', '307');
}
}