RouteViewTest.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace Illuminate\Tests\Integration\Routing;
  3. use Illuminate\Support\Facades\Route;
  4. use Illuminate\Support\Facades\View;
  5. use Orchestra\Testbench\TestCase;
  6. class RouteViewTest extends TestCase
  7. {
  8. public function testRouteView()
  9. {
  10. Route::view('route', 'view', ['foo' => 'bar']);
  11. View::addLocation(__DIR__.'/Fixtures');
  12. $this->assertStringContainsString('Test bar', $this->get('/route')->getContent());
  13. $this->assertSame(200, $this->get('/route')->status());
  14. }
  15. public function testRouteViewWithParams()
  16. {
  17. Route::view('route/{param}/{param2?}', 'view', ['foo' => 'bar']);
  18. View::addLocation(__DIR__.'/Fixtures');
  19. $this->assertStringContainsString('Test bar', $this->get('/route/value1/value2')->getContent());
  20. $this->assertStringContainsString('Test bar', $this->get('/route/value1')->getContent());
  21. }
  22. public function testRouteViewWithStatus()
  23. {
  24. Route::view('route', 'view', ['foo' => 'bar'], 418);
  25. View::addLocation(__DIR__.'/Fixtures');
  26. $this->assertSame(418, $this->get('/route')->status());
  27. }
  28. public function testRouteViewWithHeaders()
  29. {
  30. Route::view('route', 'view', ['foo' => 'bar'], 418, ['Framework' => 'Laravel']);
  31. View::addLocation(__DIR__.'/Fixtures');
  32. $this->assertSame('Laravel', $this->get('/route')->headers->get('Framework'));
  33. }
  34. public function testRouteViewOverloadingStatusWithHeaders()
  35. {
  36. Route::view('route', 'view', ['foo' => 'bar'], ['Framework' => 'Laravel']);
  37. View::addLocation(__DIR__.'/Fixtures');
  38. $this->assertSame('Laravel', $this->get('/route')->headers->get('Framework'));
  39. }
  40. }