function UrlEncodeTest::urlDataProvider

Same name in other branches
  1. 9 core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php \Drupal\Tests\migrate\Unit\process\UrlEncodeTest::urlDataProvider()
  2. 8.9.x core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php \Drupal\Tests\migrate\Unit\process\UrlEncodeTest::urlDataProvider()
  3. 11.x core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php \Drupal\Tests\migrate\Unit\process\UrlEncodeTest::urlDataProvider()

The data provider for testing URL encoding scenarios.

Return value

array An array of URLs to test.

File

core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php, line 31

Class

UrlEncodeTest
@coversDefaultClass \Drupal\migrate\Plugin\migrate\process\UrlEncode @group file

Namespace

Drupal\Tests\migrate\Unit\process

Code

public static function urlDataProvider() {
    return [
        'A URL with no characters requiring encoding' => [
            'http://example.com/normal_url.html',
            'http://example.com/normal_url.html',
        ],
        'The definitive use case - encoding spaces in URLs' => [
            'http://example.com/url with spaces.html',
            'http://example.com/url%20with%20spaces.html',
        ],
        'Definitive use case 2 - spaces in directories' => [
            'http://example.com/dir with spaces/foo.html',
            'http://example.com/dir%20with%20spaces/foo.html',
        ],
        'Local file specs without spaces should not be transformed' => [
            '/tmp/normal.txt',
            '/tmp/normal.txt',
        ],
        'Local file specs with spaces should not be transformed' => [
            '/tmp/with spaces.txt',
            '/tmp/with spaces.txt',
        ],
        'Make sure URL characters (:, ?, &) are not encoded but others are.' => [
            'https://example.com/?a=b@c&d=e+f%',
            'https://example.com/?a%3Db%40c&d%3De%2Bf%25',
        ],
    ];
}

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