diff options
author | Jozef Selesi <jozefs@users.sourceforge.net> | 2008-11-22 01:31:15 +0000 |
---|---|---|
committer | Jozef Selesi <jozefs@users.sourceforge.net> | 2008-11-22 01:31:15 +0000 |
commit | bb53a0b99f9d36d10afec914122dd262a1e442cc (patch) | |
tree | ea5253a817046261226d2989945e55522cc0321c | |
parent | 01c8cdc8dd08bf859f68aaffff32fd1acf1a66ab (diff) |
* Added test for rest::request_method().
* Implemented delete in comment.
-rw-r--r-- | core/tests/REST_Helper_Test.php | 37 | ||||
-rw-r--r-- | modules/comment/controllers/comments.php | 3 |
2 files changed, 39 insertions, 1 deletions
diff --git a/core/tests/REST_Helper_Test.php b/core/tests/REST_Helper_Test.php new file mode 100644 index 00000000..27828d89 --- /dev/null +++ b/core/tests/REST_Helper_Test.php @@ -0,0 +1,37 @@ +<?php defined("SYSPATH") or die("No direct script access."); +/** + * Gallery - a web based photo album viewer and editor + * Copyright (C) 2000-2008 Bharat Mediratta + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or (at + * your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. + */ +class REST_Helper_Test extends Unit_Test_Case { + public function request_method_test() { + foreach (array("GET", "POST") as $method) { + foreach (array("", "PUT", "DELETE") as $tunnel) { + if ($method == "GET") { + $expected = "GET"; + } else { + $expected = $tunnel == "" ? $method : $tunnel; + } + $_SERVER["REQUEST_METHOD"] = $method; + $_POST["_method"] = $tunnel; + + $this->assert_equal(strtolower(rest::request_method()), strtolower($expected), + "Request method: {$method}, tunneled: {$tunnel}"); + } + } + } +} diff --git a/modules/comment/controllers/comments.php b/modules/comment/controllers/comments.php index 511a8eda..e4825a78 100644 --- a/modules/comment/controllers/comments.php +++ b/modules/comment/controllers/comments.php @@ -103,7 +103,8 @@ class Comments_Controller extends REST_Controller { * @see Rest_Controller::_delete($resource) */ public function _delete($comment) { - rest::http_status(rest::METHOD_NOT_ALLOWED); + $comment->delete(); + rest::http_status(rest::OK); } /** |