Source
xxxxxxxxxx
<?php
/*
** Copyright (C) 2001-2025 Zabbix SIA
**
** This program is free software: you can redistribute it and/or modify it under the terms of
** the GNU Affero General Public License as published by the Free Software Foundation, version 3.
**
** 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 Affero General Public License for more details.
**
** You should have received a copy of the GNU Affero General Public License along with this program.
** If not, see <https://www.gnu.org/licenses/>.
**/
require_once dirname(__FILE__).'/../../include/func.inc.php';
require_once dirname(__FILE__).'/../include/CTest.php';
require_once dirname(__FILE__).'/../../include/html.inc.php';
class urlParamTest extends CTest {
public static function provider() {
return [
/*
* Request is empty
*/
[
'inputData' => ['abc'],
'expectedResult' => '',
'expectError' => false,
'requestData' => []
],
[
'inputData' => ['abc', true],
'expectedResult' => '',
'expectError' => false,
'requestData' => []
],
[
'inputData' => ['abc', true, 'name'],
'expectedResult' => '',
'expectError' => false,
'requestData' => []
],
[
'inputData' => [['a' => 1, 'b' => 2, 'c' => 3]],
'expectedResult' => '',
'expectError' => true,
'requestData' => []
],
[
'inputData' => ['abc', false, 'name'],
'expectedResult' => '&name=abc',
'expectError' => false,
'requestData' => []
],
[
'inputData' => [['a' => 1, 'b' => 2, 'c' => 3], false, 'abc'],
'expectedResult' => '&abc[a]=1&abc[b]=2&abc[c]=3',
'expectError' => false,
'requestData' => []
],
/*
* Request exist
*/
[
'inputData' => ['a'],
'expectedResult' => '&a=1',
'expectError' => false,
'requestData' => ['a' => 1, 'b' => 2, 'c' => 3, 'd' => ['d0', 'd1', 'd2']]
],
[
'inputData' => ['a', true],
'expectedResult' => '&a=1',
'expectError' => false,
'requestData' => ['a' => 1, 'b' => 2, 'c' => 3, 'd' => ['d0', 'd1', 'd2']]
],
[
'inputData' => ['a', true, 'b'],
'expectedResult' => '&b=1',
'expectError' => false,
'requestData' => ['a' => 1, 'b' => 2, 'c' => 3, 'd' => ['d0', 'd1', 'd2']]
],
[
'inputData' => ['b', true, 'b'],
'expectedResult' => '&b=2',
'expectError' => false,
'requestData' => ['a' => 1, 'b' => 2, 'c' => 3, 'd' => ['d0', 'd1', 'd2']]
],
[