From a12d74395c26c2f0ebd6a552aae3464d8ee8fa42 Mon Sep 17 00:00:00 2001 From: mlantz Date: Mon, 15 May 2017 01:44:59 -0400 Subject: [PATCH 1/3] Adds isRouteName method --- src/Illuminate/Http/Request.php | 16 ++++++++++++++++ tests/Http/HttpRequestTest.php | 17 ++++++++++++++++- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/Illuminate/Http/Request.php b/src/Illuminate/Http/Request.php index 0d0f725ca2dc..ffac16f3f2a4 100644 --- a/src/Illuminate/Http/Request.php +++ b/src/Illuminate/Http/Request.php @@ -192,6 +192,22 @@ public function is() return false; } + /** + * Check if route name matches string. + * + * @param string $name + * + * @return boolean + */ + public function isRouteName($name) + { + if ($this->route()->getName() == $name) { + return true; + } + + return false; + } + /** * Determine if the current request URL and query string matches a pattern. * diff --git a/tests/Http/HttpRequestTest.php b/tests/Http/HttpRequestTest.php index daedecc8f6fd..db9e9bd59983 100644 --- a/tests/Http/HttpRequestTest.php +++ b/tests/Http/HttpRequestTest.php @@ -2,9 +2,9 @@ namespace Illuminate\Tests\Http; -use Mockery as m; use Illuminate\Http\Request; use Illuminate\Routing\Route; +use Mockery as m; use PHPUnit\Framework\TestCase; use Symfony\Component\HttpFoundation\Request as SymfonyRequest; @@ -157,6 +157,21 @@ public function testIsMethod() $this->assertTrue($request->is('/')); } + public function testIsRouteNameMethod() + { + $request = Request::create('/foo/bar', 'GET'); + + $request->setRouteResolver(function () use ($request) { + $route = new Route('GET', '/foo/bar', ['as' => 'foo.bar']); + $route->bind($request); + + return $route; + }); + + $this->assertTrue($request->isRouteName('foo.bar')); + $this->assertFalse($request->isRouteName('foo.foo')); + } + public function testAjaxMethod() { $request = Request::create('/', 'GET'); From 5cd26641746f6e51518ac4a240e8bb5b07d7aa81 Mon Sep 17 00:00:00 2001 From: mlantz Date: Mon, 15 May 2017 01:49:05 -0400 Subject: [PATCH 2/3] Style fixes --- src/Illuminate/Http/Request.php | 2 +- tests/Http/HttpRequestTest.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Illuminate/Http/Request.php b/src/Illuminate/Http/Request.php index ffac16f3f2a4..a4887934c018 100644 --- a/src/Illuminate/Http/Request.php +++ b/src/Illuminate/Http/Request.php @@ -197,7 +197,7 @@ public function is() * * @param string $name * - * @return boolean + * @return bool */ public function isRouteName($name) { diff --git a/tests/Http/HttpRequestTest.php b/tests/Http/HttpRequestTest.php index db9e9bd59983..673e0450c5b8 100644 --- a/tests/Http/HttpRequestTest.php +++ b/tests/Http/HttpRequestTest.php @@ -2,9 +2,9 @@ namespace Illuminate\Tests\Http; +use Mockery as m; use Illuminate\Http\Request; use Illuminate\Routing\Route; -use Mockery as m; use PHPUnit\Framework\TestCase; use Symfony\Component\HttpFoundation\Request as SymfonyRequest; From 2a42036e48e7ab2420d2983d8a0392ffa13d9dd6 Mon Sep 17 00:00:00 2001 From: mlantz Date: Mon, 15 May 2017 03:24:41 -0400 Subject: [PATCH 3/3] Refactoring --- src/Illuminate/Http/Request.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/Illuminate/Http/Request.php b/src/Illuminate/Http/Request.php index a4887934c018..b7c72cb5970d 100644 --- a/src/Illuminate/Http/Request.php +++ b/src/Illuminate/Http/Request.php @@ -201,11 +201,7 @@ public function is() */ public function isRouteName($name) { - if ($this->route()->getName() == $name) { - return true; - } - - return false; + return $this->route()->getName() === $name; } /**