NodeTypeTest.php

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

Namespace

Drupal\Tests\node\Kernel\Plugin\migrate\source\d7

File

core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTypeTest.php

View source
<?php

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

use Drupal\Tests\migrate\Kernel\MigrateSqlSourceTestBase;

/**
 * Tests D7 node type source plugin.
 *
 * @covers \Drupal\node\Plugin\migrate\source\d7\NodeType
 *
 * @group node
 */
class NodeTypeTest extends MigrateSqlSourceTestBase {
    
    /**
     * {@inheritdoc}
     */
    protected static $modules = [
        'node',
        'user',
        'migrate_drupal',
    ];
    
    /**
     * {@inheritdoc}
     */
    public static function providerSource() {
        $tests = [];
        // The source data.
        $tests[0]['source_data']['node_type'] = [
            [
                'type' => 'page',
                'name' => 'Page',
                'base' => 'node',
                'description' => 'A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an "About us" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site\'s initial home page.',
                'help' => '',
                'title_label' => 'Title',
                'custom' => 1,
                'modified' => 0,
                'locked' => 0,
                'disabled' => 0,
                'orig_type' => 'page',
            ],
            [
                'type' => 'story',
                'name' => 'Story',
                'base' => 'node',
                'description' => 'A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site\'s initial home page, and provides the ability to post comments.',
                'help' => '',
                'title_label' => 'Title',
                'custom' => 1,
                'modified' => 0,
                'locked' => 0,
                'disabled' => 0,
                'orig_type' => 'story',
            ],
        ];
        $tests[0]['source_data']['variable'] = [
            [
                'name' => 'comment_anonymous_page',
                'value' => 'i:0;',
            ],
            [
                'name' => 'comment_anonymous_story',
                'value' => 'i:1;',
            ],
            [
                'name' => 'comment_default_mode_page',
                'value' => 'i:0;',
            ],
            [
                'name' => 'comment_default_mode_story',
                'value' => 'i:1;',
            ],
            [
                'name' => 'comment_default_per_page_page',
                'value' => 's:2:"10";',
            ],
            [
                'name' => 'comment_default_per_page_story',
                'value' => 's:2:"20";',
            ],
            [
                'name' => 'comment_form_location_page',
                'value' => 'i:0;',
            ],
            [
                'name' => 'comment_form_location_story',
                'value' => 'i:1;',
            ],
            [
                'name' => 'comment_page',
                'value' => 's:1:"0";',
            ],
            [
                'name' => 'comment_preview_page',
                'value' => 's:1:"0";',
            ],
            [
                'name' => 'comment_preview_story',
                'value' => 's:1:"1";',
            ],
            [
                'name' => 'comment_story',
                'value' => 's:1:"1";',
            ],
            [
                'name' => 'comment_subject_field_page',
                'value' => 'i:0;',
            ],
            [
                'name' => 'comment_subject_field_story',
                'value' => 'i:1;',
            ],
            [
                'name' => 'node_options_page',
                'value' => 'a:1:{i:0;s:6:"status";}',
            ],
            [
                'name' => 'node_options_story',
                'value' => 'a:1:{i:0;s:6:"status";}',
            ],
        ];
        $tests[0]['source_data']['field_config_instance'] = [
            [
                'entity_type' => 'node',
                'bundle' => 'page',
                'field_name' => 'body',
                'data' => 'a:1:{s:5:"label";s:4:"Body";}',
            ],
            [
                'entity_type' => 'node',
                'bundle' => 'story',
                'field_name' => 'body',
                'data' => 'a:1:{s:5:"label";s:4:"Body";}',
            ],
        ];
        $tests[0]['source_data']['system'] = [
            [
                'type' => 'module',
                'name' => 'comment',
                'status' => '1',
            ],
            [
                'type' => 'module',
                'name' => 'field',
                'status' => '1',
            ],
        ];
        // The expected results.
        $tests[0]['expected_data'] = [
            [
                'type' => 'page',
                'name' => 'Page',
                'base' => 'node',
                'description' => 'A <em>page</em>, similar in form to a <em>story</em>, is a simple method for creating and displaying information that rarely changes, such as an "About us" section of a website. By default, a <em>page</em> entry does not allow visitor comments and is not featured on the site\'s initial home page.',
                'help' => '',
                'title_label' => 'Title',
                'custom' => 1,
                'modified' => 0,
                'locked' => 0,
                'disabled' => 0,
                'orig_type' => 'page',
                'options' => [
                    'promote' => FALSE,
                    'sticky' => FALSE,
                    'status' => TRUE,
                    'revision' => FALSE,
                ],
                'create_body' => TRUE,
                'body_label' => 'Body',
                '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',
                'base' => 'node',
                'description' => 'A <em>story</em>, similar in form to a <em>page</em>, is ideal for creating and displaying content that informs or engages website visitors. Press releases, site announcements, and informal blog-like entries may all be created with a <em>story</em> entry. By default, a <em>story</em> entry is automatically featured on the site\'s initial home page, and provides the ability to post comments.',
                'help' => '',
                'title_label' => 'Title',
                'custom' => 1,
                'modified' => 0,
                'locked' => 0,
                'disabled' => 0,
                'orig_type' => 'story',
                'options' => [
                    'promote' => FALSE,
                    'sticky' => FALSE,
                    'status' => TRUE,
                    'revision' => FALSE,
                ],
                'create_body' => TRUE,
                'body_label' => 'Body',
                '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,
            ],
        ];
        return $tests;
    }

}

Classes

Title Deprecated Summary
NodeTypeTest Tests D7 node type source plugin.

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