CommentTypeTest.php

Same filename in this branch
  1. 11.x core/modules/jsonapi/tests/src/Functional/CommentTypeTest.php
  2. 11.x core/modules/comment/tests/src/Functional/CommentTypeTest.php
Same filename and directory in other branches
  1. 9 core/modules/jsonapi/tests/src/Functional/CommentTypeTest.php
  2. 9 core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php
  3. 9 core/modules/comment/tests/src/Functional/CommentTypeTest.php
  4. 8.9.x core/modules/jsonapi/tests/src/Functional/CommentTypeTest.php
  5. 8.9.x core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentTypeTest.php
  6. 8.9.x core/modules/comment/tests/src/Functional/CommentTypeTest.php
  7. 10 core/modules/jsonapi/tests/src/Functional/CommentTypeTest.php
  8. 10 core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php
  9. 10 core/modules/comment/tests/src/Functional/CommentTypeTest.php

Namespace

Drupal\Tests\comment\Kernel\Plugin\migrate\source

File

core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php

View source
<?php

declare (strict_types=1);
namespace Drupal\Tests\comment\Kernel\Plugin\migrate\source;

use Drupal\Tests\migrate\Kernel\MigrateSqlSourceTestBase;

/**
 * Tests the comment type source plugin.
 *
 * @covers \Drupal\comment\Plugin\migrate\source\CommentType
 *
 * @group comment
 */
class CommentTypeTest extends MigrateSqlSourceTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'node',
        'comment',
        'migrate_drupal',
    ];
    
    /**
     * {@inheritdoc}
     */
    public static function providerSource() {
        $node_type_rows = [
            [
                'type' => 'page',
                'name' => 'Page',
            ],
            [
                'type' => 'story',
                'name' => 'Story',
            ],
        ];
        $comment_variable_rows = [
            [
                'name' => 'comment_anonymous_page',
                'value' => serialize(0),
            ],
            [
                'name' => 'comment_anonymous_story',
                'value' => serialize(1),
            ],
            [
                'name' => 'comment_default_mode_page',
                'value' => serialize(0),
            ],
            [
                'name' => 'comment_default_mode_story',
                'value' => serialize(1),
            ],
            [
                'name' => 'comment_default_per_page_page',
                'value' => serialize('10'),
            ],
            [
                'name' => 'comment_default_per_page_story',
                'value' => serialize('20'),
            ],
            [
                'name' => 'comment_form_location_page',
                'value' => serialize(0),
            ],
            [
                'name' => 'comment_form_location_story',
                'value' => serialize(1),
            ],
            [
                'name' => 'comment_page',
                'value' => serialize('0'),
            ],
            [
                'name' => 'comment_preview_page',
                'value' => serialize('0'),
            ],
            [
                'name' => 'comment_preview_story',
                'value' => serialize('1'),
            ],
            [
                'name' => 'comment_story',
                'value' => serialize('1'),
            ],
            [
                'name' => 'comment_subject_field_page',
                'value' => serialize(0),
            ],
            [
                'name' => 'comment_subject_field_story',
                'value' => serialize(1),
            ],
        ];
        return [
            'Node and comment enabled, two node types' => [
                'source_data' => [
                    'node_type' => $node_type_rows,
                    'variable' => $comment_variable_rows,
                ],
                'expected_data' => [
                    [
                        'type' => 'page',
                        'name' => 'Page',
                        'comment' => 0,
                        'comment_default_mode' => 0,
                        'comment_default_per_page' => '10',
                        'comment_anonymous' => 0,
                        'comment_subject_field' => 0,
                        'comment_preview' => 0,
                        'comment_form_location' => 0,
                    ],
                    [
                        'type' => 'story',
                        'name' => 'Story',
                        'comment' => 1,
                        'comment_default_mode' => 1,
                        'comment_default_per_page' => '20',
                        'comment_anonymous' => 1,
                        'comment_subject_field' => 1,
                        'comment_preview' => 1,
                        'comment_form_location' => 1,
                    ],
                ],
            ],
            'Node and comment enabled, two node types, no comment variables' => [
                'source_data' => [
                    'node_type' => $node_type_rows,
                    'variable' => [
                        [
                            'name' => 'css_js_query_string',
                            'value' => serialize('foobar'),
                        ],
                    ],
                ],
                'expected_data' => [
                    [
                        'type' => 'page',
                        'name' => 'Page',
                        'comment' => NULL,
                        'comment_default_mode' => NULL,
                        'comment_default_per_page' => NULL,
                        'comment_anonymous' => NULL,
                        'comment_subject_field' => NULL,
                        'comment_preview' => NULL,
                        'comment_form_location' => NULL,
                    ],
                    [
                        'type' => 'story',
                        'name' => 'Story',
                        'comment' => NULL,
                        'comment_default_mode' => NULL,
                        'comment_default_per_page' => NULL,
                        'comment_anonymous' => NULL,
                        'comment_subject_field' => NULL,
                        'comment_preview' => NULL,
                        'comment_form_location' => NULL,
                    ],
                ],
            ],
        ];
    }

}

Classes

Title Deprecated Summary
CommentTypeTest Tests the comment type source plugin.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.