video_embed_spotify-8.x-1.5/tests/src/Unit/ProviderUrlParseTest.php

tests/src/Unit/ProviderUrlParseTest.php
<?php

namespace Drupal\Tests\video_embed_spotify\Unit;

use Drupal\Tests\UnitTestCase;
use Drupal\video_embed_spotify\Plugin\video_embed_field\Provider\Spotify;

/**
 * Test that URL parsing for the provider is functioning.
 *
 * @group video_embed_spotify
 */
class ProviderUrlParseTest extends UnitTestCase {

  /**
   * Test URL parsing works as expected.
   *
   * @dataProvider urlsWithExpectedIds
   */
  public function testUrlParsing($url, $expected) {
    $this->assertEquals($expected, Spotify::getIdFromInput($url));
  }

  /**
   * A data provider for URL parsing test cases.
   *
   * @return array
   *   An array of test cases.
   */
  public function urlsWithExpectedIds() {
    return [
      [
        'https://open.spotify.com/playlist/2PXdUld4Ueio2pHcB6sM8j',
        '2PXdUld4Ueio2pHcB6sM8j',
      ],
      [
        'https://open.spotify.com/playlist/2PXdUld4Ueio2pHcB6sM8j?si=SMIEFaWpQZWGo4xnvR2Gkm',
        '2PXdUld4Ueio2pHcB6sM8j',
      ],
      [
        'https://open.spotify.com/album/49sy06JJUk1CRwkG9wbRY',
        '49sy06JJUk1CRwkG9wbRY',
      ],
      [
        'https://open.spotify.com/artist/2uFUBdaVGtyMqckSeCl0Q',
        '2uFUBdaVGtyMqckSeCl0Q',
      ],
      [
        'https://open.spotify.com/show/6R2ywcv4TDsbFDhMM2e5J',
        '6R2ywcv4TDsbFDhMM2e5J',
      ],
      [
        'https://open.spotify.com/episode/0zB1BQQGh1Jrqo1FLI4Ce',
        '0zB1BQQGh1Jrqo1FLI4Ce',
      ],
      [
        'https://open.spotify.com/track/1XuxjobTmFFSMS1vWx7pJm',
        '1XuxjobTmFFSMS1vWx7pJm',
      ],
      [
        'https://open.spotify.com/track/1McXbEv5YKBK8gSbJNlGw?context=spotify%3Aplaylist%3A37i9dQZF1X07Bg0Q5GozA&si=3CRC5IuISZK-eh5G_lxHPQ',
        '1McXbEv5YKBK8gSbJNlGw',
      ],
      [
        'https://open.spotify.com/user/tao55syilef?si=SMIEFaWpQZWGo4xnvR2Gkm&nd=1&dlsi=SMIEFaWpQZWGo4xnvR2Gkm',
        'tao55syilef',
      ],
    ];
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc