From bcdbdc810849ce1f759d6517819f09f844eb94c5 Mon Sep 17 00:00:00 2001 From: U-Zyn Chua Date: Tue, 15 Jan 2013 09:17:24 +0800 Subject: [PATCH] Add OK or Successful HTTP codes 200-206 to HttpResponse::isOK(). Fixes #3531 --- lib/Cake/Network/Http/HttpResponse.php | 4 +-- .../Case/Network/Http/HttpResponseTest.php | 28 +++++++++++++++++-- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/lib/Cake/Network/Http/HttpResponse.php b/lib/Cake/Network/Http/HttpResponse.php index 90c622588f4..6a0d768d6e1 100644 --- a/lib/Cake/Network/Http/HttpResponse.php +++ b/lib/Cake/Network/Http/HttpResponse.php @@ -116,12 +116,12 @@ public function getHeader($name, $headers = null) { } /** - * If return is 200 (OK) + * If return is a valid 2xx (OK or Successful) * * @return boolean */ public function isOk() { - return $this->code == 200; + return in_array($this->code, array(200, 201, 202, 203, 204, 205, 206)); } /** diff --git a/lib/Cake/Test/Case/Network/Http/HttpResponseTest.php b/lib/Cake/Test/Case/Network/Http/HttpResponseTest.php index 2f980982131..495a70a8b09 100644 --- a/lib/Cake/Test/Case/Network/Http/HttpResponseTest.php +++ b/lib/Cake/Test/Case/Network/Http/HttpResponseTest.php @@ -157,12 +157,36 @@ public function testIsOk() { $this->assertFalse($this->HttpResponse->isOk()); $this->HttpResponse->code = -1; $this->assertFalse($this->HttpResponse->isOk()); - $this->HttpResponse->code = 201; - $this->assertFalse($this->HttpResponse->isOk()); $this->HttpResponse->code = 'what?'; $this->assertFalse($this->HttpResponse->isOk()); $this->HttpResponse->code = 200; $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 201; + $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 202; + $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 203; + $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 204; + $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 205; + $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 206; + $this->assertTrue($this->HttpResponse->isOk()); + $this->HttpResponse->code = 207; + $this->assertFalse($this->HttpResponse->isOk()); + $this->HttpResponse->code = 208; + $this->assertFalse($this->HttpResponse->isOk()); + $this->HttpResponse->code = 209; + $this->assertFalse($this->HttpResponse->isOk()); + $this->HttpResponse->code = 210; + $this->assertFalse($this->HttpResponse->isOk()); + $this->HttpResponse->code = 226; + $this->assertFalse($this->HttpResponse->isOk()); + $this->HttpResponse->code = 288; + $this->assertFalse($this->HttpResponse->isOk()); + $this->HttpResponse->code = 301; + $this->assertFalse($this->HttpResponse->isOk()); } /**