You are here

RoleTest.php in Drupal 8

File

core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/RoleTest.php
View source
<?php

namespace Drupal\Tests\user\Kernel\Plugin\migrate\source\d6;

use Drupal\Tests\migrate\Kernel\MigrateSqlSourceTestBase;

/**
 * Tests the d6_user_role source plugin.
 *
 * @covers \Drupal\user\Plugin\migrate\source\d6\Role
 * @group user
 */
class RoleTest extends MigrateSqlSourceTestBase {

  /**
   * {@inheritdoc}
   */
  public static $modules = [
    'user',
    'migrate_drupal',
  ];

  /**
   * {@inheritdoc}
   */
  public function providerSource() {
    $tests = [
      [
        'source_data' => [],
        'expected_data' => [],
      ],
    ];
    $roles = [
      [
        'rid' => 1,
        'name' => 'anonymous user',
        'permissions' => [
          'access content',
        ],
      ],
      [
        'rid' => 2,
        'name' => 'authenticated user',
        'permissions' => [
          'access comments',
          'access content',
          'post comments',
          'post comments without approval',
        ],
      ],
      [
        'rid' => 3,
        'name' => 'administrator',
        'permissions' => [
          'access comments',
          'administer comments',
          'post comments',
          'post comments without approval',
          'access content',
          'administer content types',
          'administer nodes',
        ],
      ],
    ];

    // The source data.
    foreach ($roles as $role) {
      $tests[0]['source_data']['permission'][] = [
        'rid' => $role['rid'],
        'perm' => implode(', ', $role['permissions']),
      ];
      unset($role['permissions']);
      $tests[0]['source_data']['role'][] = $role;
    }
    $tests[0]['source_data']['filter_formats'] = [
      [
        'format' => 1,
        'roles' => '',
      ],
    ];

    // The expected results.
    $tests[0]['expected_data'] = $roles;
    return $tests;
  }

}

Classes

Namesort descending Description
RoleTest Tests the d6_user_role source plugin.