class BytesTest

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Component/Utility/BytesTest.php \Drupal\Tests\Component\Utility\BytesTest
  2. 10 core/tests/Drupal/Tests/Component/Utility/BytesTest.php \Drupal\Tests\Component\Utility\BytesTest
  3. 11.x core/tests/Drupal/Tests/Component/Utility/BytesTest.php \Drupal\Tests\Component\Utility\BytesTest

Tests bytes size parsing helper methods.

@group Utility

@coversDefaultClass \Drupal\Component\Utility\Bytes

Hierarchy

  • class \Drupal\Tests\Component\Utility\BytesTest extends \PHPUnit\Framework\TestCase

Expanded class hierarchy of BytesTest

File

core/tests/Drupal/Tests/Component/Utility/BytesTest.php, line 15

Namespace

Drupal\Tests\Component\Utility
View source
class BytesTest extends TestCase {
    
    /**
     * Tests \Drupal\Component\Utility\Bytes::toInt().
     *
     * @param int $size
     *   The value for the size argument for
     *   \Drupal\Component\Utility\Bytes::toInt().
     * @param int $expected_int
     *   The expected return value from
     *   \Drupal\Component\Utility\Bytes::toInt().
     *
     * @dataProvider providerTestToInt
     * @covers ::toInt
     */
    public function testToInt($size, $expected_int) {
        $this->assertEquals($expected_int, Bytes::toInt($size));
    }
    
    /**
     * Provides data for testToInt.
     *
     * @return array
     *   An array of arrays, each containing the argument for
     *   \Drupal\Component\Utility\Bytes::toInt(): size, and the expected return
     *   value.
     */
    public function providerTestToInt() {
        return [
            [
                '1',
                1,
            ],
            [
                '1 byte',
                1,
            ],
            [
                '1 KB',
                Bytes::KILOBYTE,
            ],
            [
                '1 MB',
                pow(Bytes::KILOBYTE, 2),
            ],
            [
                '1 GB',
                pow(Bytes::KILOBYTE, 3),
            ],
            [
                '1 TB',
                pow(Bytes::KILOBYTE, 4),
            ],
            [
                '1 PB',
                pow(Bytes::KILOBYTE, 5),
            ],
            [
                '1 EB',
                pow(Bytes::KILOBYTE, 6),
            ],
            [
                '1 ZB',
                pow(Bytes::KILOBYTE, 7),
            ],
            [
                '1 YB',
                pow(Bytes::KILOBYTE, 8),
            ],
            [
                '23476892 bytes',
                23476892,
            ],
            // 76 MB.
[
                '76MRandomStringThatShouldBeIgnoredByParseSize.',
                79691776,
            ],
            // 76.24 GB (with typo).
[
                '76.24 Giggabyte',
                81862076662,
            ],
            [
                '1.5',
                2,
            ],
            [
                '2.4',
                2,
            ],
            [
                '',
                0,
            ],
        ];
    }

}

Members

Title Sort descending Modifiers Object type Summary
BytesTest::providerTestToInt public function Provides data for testToInt.
BytesTest::testToInt public function Tests \Drupal\Component\Utility\Bytes::toInt().

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