Skip to content

Commit

Permalink
[10.x] Add a missing semicolon to CompilesClasses (#47280)
Browse files Browse the repository at this point in the history
* Add a missing semicolon to CompilesClasses

* Fix testClassesAreConditionallyCompiledFromArray

* Fix testUnclosedParenthesisForBladeTags

* Fix testNestedTagCalls

* Fix testNestedTagCalls again
  • Loading branch information
szepeviktor committed May 30, 2023
1 parent 9de048d commit 506f72f
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 11 deletions.
2 changes: 1 addition & 1 deletion src/Illuminate/View/Compilers/Concerns/CompilesClasses.php
Expand Up @@ -14,6 +14,6 @@ protected function compileClass($expression)
{
$expression = is_null($expression) ? '([])' : $expression;

return "class=\"<?php echo \Illuminate\Support\Arr::toCssClasses{$expression} ?>\"";
return "class=\"<?php echo \Illuminate\Support\Arr::toCssClasses{$expression}; ?>\"";
}
}
2 changes: 1 addition & 1 deletion tests/View/Blade/BladeClassTest.php
Expand Up @@ -7,7 +7,7 @@ class BladeClassTest extends AbstractBladeTestCase
public function testClassesAreConditionallyCompiledFromArray()
{
$string = "<span @class(['font-bold', 'mt-4', 'ml-2' => true, 'mr-2' => false])></span>";
$expected = "<span class=\"<?php echo \Illuminate\Support\Arr::toCssClasses(['font-bold', 'mt-4', 'ml-2' => true, 'mr-2' => false]) ?>\"></span>";
$expected = "<span class=\"<?php echo \Illuminate\Support\Arr::toCssClasses(['font-bold', 'mt-4', 'ml-2' => true, 'mr-2' => false]); ?>\"></span>";

$this->assertEquals($expected, $this->compiler->compileString($string));
}
Expand Down
18 changes: 9 additions & 9 deletions tests/View/Blade/BladePhpStatementsTest.php
Expand Up @@ -122,12 +122,12 @@ public function testStringWithEscapingDataValue()
public function testUnclosedParenthesisForBladeTags()
{
$string = "<span @class(['(']></span>";
$expected = "<span class=\"<?php echo \Illuminate\Support\Arr::toCssClasses([]) ?>\"(['(']></span>";
$expected = "<span class=\"<?php echo \Illuminate\Support\Arr::toCssClasses([]); ?>\"(['(']></span>";

$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['']></span>";
$expected = "<span class=\"<?php echo \Illuminate\Support\Arr::toCssClasses([]) ?>\"(['']></span>";
$expected = "<span class=\"<?php echo \Illuminate\Support\Arr::toCssClasses([]); ?>\"(['']></span>";

$this->assertEquals($expected, $this->compiler->compileString($string));

Expand All @@ -145,31 +145,31 @@ public function testUnclosedParenthesisForBladeTags()
public function testNestedTagCalls()
{
$string = "<span @class(['k' => @empty(\$v)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['k))' => @empty(\$v)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k))\' => @empty($v)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k))\' => @empty($v)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['k' => @empty(\$v), 't' => @empty(\$v1)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['k' => @empty(\$v), 't' => @empty(\$v1)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['k' => @empty(\$v), 't' => @empty(\$v1), 'r' => @empty(\$v2)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1), \'r\' => @empty($v2)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1), \'r\' => @empty($v2)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['k' => @empty(\$v), 't))' => @empty(\$v1), 'r' => @empty(\$v2)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t))\' => @empty($v1), \'r\' => @empty($v2)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t))\' => @empty($v1), \'r\' => @empty($v2)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));

$string = "<span @class(['k' => @empty(\$v), 't' => @empty(\$v1), 'r' => @empty(\$v2), 'l' => 'l'])></span><span @class(['k' => @empty(\$v)])></span>";
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1), \'r\' => @empty($v2), \'l\' => \'l\']) ?>"></span><span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v)]) ?>"></span>';
$expected = '<span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v), \'t\' => @empty($v1), \'r\' => @empty($v2), \'l\' => \'l\']); ?>"></span><span class="<?php echo \Illuminate\Support\Arr::toCssClasses([\'k\' => @empty($v)]); ?>"></span>';
$this->assertEquals($expected, $this->compiler->compileString($string));
}

Expand Down

0 comments on commit 506f72f

Please sign in to comment.