function BoxTranslationTest::providerSource

Same name in other branches
  1. 8.9.x core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php \Drupal\Tests\block_content\Kernel\Plugin\migrate\source\d6\BoxTranslationTest::providerSource()
  2. 10 core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php \Drupal\Tests\block_content\Kernel\Plugin\migrate\source\d6\BoxTranslationTest::providerSource()
  3. 11.x core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php \Drupal\Tests\block_content\Kernel\Plugin\migrate\source\d6\BoxTranslationTest::providerSource()

Overrides MigrateSourceTestBase::providerSource

File

core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php, line 24

Class

BoxTranslationTest
Tests i18n custom block translations source plugin.

Namespace

Drupal\Tests\block_content\Kernel\Plugin\migrate\source\d6

Code

public function providerSource() {
    $tests = [];
    // The source data.
    $tests[0]['database']['boxes'] = [
        [
            'bid' => 1,
            'body' => 'box 1 body',
            'info' => 'box 1 title',
            'format' => '2',
        ],
        [
            'bid' => 2,
            'body' => 'box 2 body',
            'info' => 'box 2 title',
            'format' => '2',
        ],
    ];
    $tests[0]['database']['i18n_strings'] = [
        [
            'lid' => 1,
            'objectid' => 1,
            'type' => 'block',
            'property' => 'title',
            'objectindex' => 1,
            'format' => 0,
        ],
        [
            'lid' => 2,
            'objectid' => 1,
            'type' => 'block',
            'property' => 'body',
            'objectindex' => 1,
            'format' => 0,
        ],
        [
            'lid' => 3,
            'objectid' => 2,
            'type' => 'block',
            'property' => 'body',
            'objectindex' => 2,
            'format' => 2,
        ],
    ];
    $tests[0]['database']['locales_target'] = [
        [
            'lid' => 1,
            'language' => 'fr',
            'translation' => 'fr - title translation',
            'plid' => 0,
            'plural' => 0,
            'i18n_status' => 0,
        ],
        [
            'lid' => 2,
            'language' => 'fr',
            'translation' => 'fr - body translation',
            'plid' => 0,
            'plural' => 0,
            'i18n_status' => 0,
        ],
        [
            'lid' => 3,
            'language' => 'zu',
            'translation' => 'zu - body translation',
            'plid' => 0,
            'plural' => 0,
            'i18n_status' => 0,
        ],
    ];
    $tests[0]['expected_results'] = [
        [
            'lid' => '1',
            'property' => 'title',
            'language' => 'fr',
            'translation' => 'fr - title translation',
            'bid' => '1',
            'format' => '2',
            'title_translated' => 'fr - title translation',
            'body_translated' => 'fr - body translation',
            'title' => 'box 1 title',
            'body' => 'box 1 body',
        ],
        [
            'lid' => '2',
            'property' => 'body',
            'language' => 'fr',
            'translation' => 'fr - body translation',
            'bid' => '1',
            'format' => '2',
            'title_translated' => 'fr - title translation',
            'body_translated' => 'fr - body translation',
            'title' => 'box 1 title',
            'body' => 'box 1 body',
        ],
        [
            'lid' => '3',
            'property' => 'body',
            'language' => 'zu',
            'translation' => 'zu - body translation',
            'bid' => '2',
            'format' => '2',
            'title_translated' => NULL,
            'body_translated' => 'zu - body translation',
            'title' => 'box 2 title',
            'body' => 'box 2 body',
        ],
    ];
    return $tests;
}

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