BladeErrorTest.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace Illuminate\Tests\View\Blade;
  3. class BladeErrorTest extends AbstractBladeTestCase
  4. {
  5. public function testErrorsAreCompiled()
  6. {
  7. $string = '
  8. @error(\'email\')
  9. <span>{{ $message }}</span>
  10. @enderror';
  11. $expected = '
  12. <?php $__errorArgs = [\'email\'];
  13. $__bag = $errors->getBag($__errorArgs[1] ?? \'default\');
  14. if ($__bag->has($__errorArgs[0])) :
  15. if (isset($message)) { $__messageOriginal = $message; }
  16. $message = $__bag->first($__errorArgs[0]); ?>
  17. <span><?php echo e($message); ?></span>
  18. <?php unset($message);
  19. if (isset($__messageOriginal)) { $message = $__messageOriginal; }
  20. endif;
  21. unset($__errorArgs, $__bag); ?>';
  22. $this->assertEquals($expected, $this->compiler->compileString($string));
  23. }
  24. public function testErrorsWithBagsAreCompiled()
  25. {
  26. $string = '
  27. @error(\'email\', \'customBag\')
  28. <span>{{ $message }}</span>
  29. @enderror';
  30. $expected = '
  31. <?php $__errorArgs = [\'email\', \'customBag\'];
  32. $__bag = $errors->getBag($__errorArgs[1] ?? \'default\');
  33. if ($__bag->has($__errorArgs[0])) :
  34. if (isset($message)) { $__messageOriginal = $message; }
  35. $message = $__bag->first($__errorArgs[0]); ?>
  36. <span><?php echo e($message); ?></span>
  37. <?php unset($message);
  38. if (isset($__messageOriginal)) { $message = $__messageOriginal; }
  39. endif;
  40. unset($__errorArgs, $__bag); ?>';
  41. $this->assertEquals($expected, $this->compiler->compileString($string));
  42. }
  43. }