1<?php 2/** 3 * OrangeHRM is a comprehensive Human Resource Management (HRM) System that captures 4 * all the essential functionalities required for any enterprise. 5 * Copyright (C) 2006 OrangeHRM Inc., http://www.orangehrm.com 6 * 7 * OrangeHRM is free software; you can redistribute it and/or modify it under the terms of 8 * the GNU General Public License as published by the Free Software Foundation; either 9 * version 2 of the License, or (at your option) any later version. 10 * 11 * OrangeHRM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 12 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 * See the GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License along with this program; 16 * if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 17 * Boston, MA 02110-1301, USA 18 */ 19 20use Orangehrm\Rest\Http\Request; 21use Orangehrm\Rest\Http\RequestParams; 22 23/** 24 * @group API 25 */ 26class RequestParamsTest extends PHPUnit\Framework\TestCase 27{ 28 29 public function testGetQueryParam() 30 { 31 $_GET['id'] = 1; 32 $request = new Request($this->getSfRequest()); 33 $requestParam = new RequestParams($request); 34 $this->assertEquals(1, $requestParam->getQueryParam('id')); 35 } 36 37 public function testSetParam() 38 { 39 $request = new Request($this->getSfRequest()); 40 $requestParam = new RequestParams($request); 41 $this->assertTrue(is_null($requestParam->getQueryParam('test'))); 42 $requestParam->setParam('test', 'TestValue'); 43 $this->assertEquals('TestValue', $requestParam->getQueryParam('test')); 44 } 45 46 public function testGetPostParams() 47 { 48 $request = new Request($this->getSfRequest()); 49 $requestParam = new RequestParams($request); 50 $this->assertTrue(empty($requestParam->getPostParams())); 51 52 $_POST['id'] = 1; 53 $request = new Request($this->getSfRequest()); 54 $requestParam = new RequestParams($request); 55 $this->assertEquals(['id' => 1], $requestParam->getPostParams()); 56 } 57 58 public function testSetPostParams() 59 { 60 $request = new Request($this->getSfRequest()); 61 $requestParam = new RequestParams($request); 62 $this->assertTrue(empty($requestParam->getPostParams())); 63 64 $requestParam->setPostParam('test', 'TestValue'); 65 $this->assertEquals(['test' => 'TestValue'], $requestParam->getPostParams()); 66 67 $_POST['id'] = 1; 68 $request = new Request($this->getSfRequest()); 69 $requestParam = new RequestParams($request); 70 $requestParam->setPostParam('id', 2); 71 $this->assertEquals(['id' => 2], $requestParam->getPostParams()); 72 } 73 74 private function getSfRequest() 75 { 76 $sfEvent = new sfEventDispatcher(); 77 return new sfWebRequest($sfEvent); 78 } 79} 80