summaryrefslogtreecommitdiff
path: root/www/wiki/vendor/param-processor/param-processor/tests/Unit/PackagePrivate/DimensionParserTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/vendor/param-processor/param-processor/tests/Unit/PackagePrivate/DimensionParserTest.php')
-rw-r--r--www/wiki/vendor/param-processor/param-processor/tests/Unit/PackagePrivate/DimensionParserTest.php51
1 files changed, 51 insertions, 0 deletions
diff --git a/www/wiki/vendor/param-processor/param-processor/tests/Unit/PackagePrivate/DimensionParserTest.php b/www/wiki/vendor/param-processor/param-processor/tests/Unit/PackagePrivate/DimensionParserTest.php
new file mode 100644
index 00000000..e82bb8b7
--- /dev/null
+++ b/www/wiki/vendor/param-processor/param-processor/tests/Unit/PackagePrivate/DimensionParserTest.php
@@ -0,0 +1,51 @@
+<?php
+
+declare( strict_types = 1 );
+
+namespace ParamProcessor\Tests\Unit\PackagePrivate;
+
+use ParamProcessor\PackagePrivate\DimensionParser;
+use PHPUnit\Framework\TestCase;
+use ValueParsers\ParseException;
+use ValueParsers\ParserOptions;
+
+class DimensionParserTest extends TestCase {
+
+ public function testParserExceptionOnNonString() {
+ $this->expectException( ParseException::class );
+ $this->parse( 32202 );
+ }
+
+ private function parse( $input ) {
+ return ( new DimensionParser() )->parse( $input );
+ }
+
+ /**
+ * @dataProvider validDimensionProvider
+ */
+ public function testParsingValidInputs( string $input, string $expected ) {
+ $this->assertSame( $expected, $this->parse( $input ) );
+ }
+
+ public function validDimensionProvider() {
+ yield [ '10px', '10px' ];
+ yield [ '10ex', '10ex' ];
+ yield [ '10em', '10em' ];
+ yield [ '2.5px', '2.5px' ];
+
+ yield [ '10 px', '10px' ];
+ yield [ '10 px', '10px' ];
+ yield [ ' 10 px ', '10px' ];
+
+ yield [ '10', '10px' ];
+ yield [ '2.5', '2.5px' ];
+ }
+
+ public function testAlternateDefaultUnit() {
+ $this->assertSame(
+ '1%',
+ ( new DimensionParser( new ParserOptions( [ DimensionParser::DEFAULT_UNIT => '%' ] ) ) )->parse( '1' )
+ );
+ }
+
+}