Skip to content
Snippets Groups Projects
Select Git revision
  • 63814764da863c3d043fdac21a01ca3c83bf7b7d
  • 11.x default protected
  • 11.2.x protected
  • 10.5.x protected
  • 10.6.x protected
  • 11.1.x protected
  • 10.4.x protected
  • 11.0.x protected
  • 10.3.x protected
  • 7.x protected
  • 10.2.x protected
  • 10.1.x protected
  • 9.5.x protected
  • 10.0.x protected
  • 9.4.x protected
  • 9.3.x protected
  • 9.2.x protected
  • 9.1.x protected
  • 8.9.x protected
  • 9.0.x protected
  • 8.8.x protected
  • 10.5.1 protected
  • 11.2.2 protected
  • 11.2.1 protected
  • 11.2.0 protected
  • 10.5.0 protected
  • 11.2.0-rc2 protected
  • 10.5.0-rc1 protected
  • 11.2.0-rc1 protected
  • 10.4.8 protected
  • 11.1.8 protected
  • 10.5.0-beta1 protected
  • 11.2.0-beta1 protected
  • 11.2.0-alpha1 protected
  • 10.4.7 protected
  • 11.1.7 protected
  • 10.4.6 protected
  • 11.1.6 protected
  • 10.3.14 protected
  • 10.4.5 protected
  • 11.0.13 protected
41 results

blog.module

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    UnicodeTest.php 18.26 KiB
    <?php
    
    namespace Drupal\Tests\Component\Utility;
    
    use Drupal\Component\Utility\Unicode;
    use PHPUnit\Framework\TestCase;
    
    /**
     * Test unicode handling features implemented in Unicode component.
     *
     * @group Utility
     *
     * @coversDefaultClass \Drupal\Component\Utility\Unicode
     */
    class UnicodeTest extends TestCase {
    
      /**
       * {@inheritdoc}
       *
       * @covers ::check
       */
      protected function setUp() {
        // Initialize unicode component.
        Unicode::check();
      }
    
      /**
       * Getting and settings the multibyte environment status.
       *
       * @dataProvider providerTestStatus
       * @covers ::getStatus
       * @covers ::setStatus
       */
      public function testStatus($value, $expected, $invalid = FALSE) {
        if ($invalid) {
          $this->setExpectedException('InvalidArgumentException');
        }
        Unicode::setStatus($value);
        $this->assertEquals($expected, Unicode::getStatus());
      }
    
      /**
       * Data provider for testStatus().
       *
       * @see testStatus()
       *
       * @return array
       *   An array containing:
       *     - The status value to set.
       *     - The status value to expect after setting the new value.
       *     - (optional) Boolean indicating invalid status. Defaults to FALSE.
       */
      public function providerTestStatus() {
        return [
          [Unicode::STATUS_SINGLEBYTE, Unicode::STATUS_SINGLEBYTE],
          [rand(10, 100), Unicode::STATUS_SINGLEBYTE, TRUE],
          [rand(10, 100), Unicode::STATUS_SINGLEBYTE, TRUE],
          [Unicode::STATUS_MULTIBYTE, Unicode::STATUS_MULTIBYTE],
          [rand(10, 100), Unicode::STATUS_MULTIBYTE, TRUE],
          [Unicode::STATUS_ERROR, Unicode::STATUS_ERROR],
          [Unicode::STATUS_MULTIBYTE, Unicode::STATUS_MULTIBYTE],
        ];
      }
    
      /**
       * Tests multibyte encoding and decoding.
       *
       * @dataProvider providerTestMimeHeader
       * @covers ::mimeHeaderEncode
       * @covers ::mimeHeaderDecode