tests/phpunit/** - Remove unnecessary "require_once" statements
[civicrm-core.git] / tests / phpunit / CRM / Core / MenuTest.php
CommitLineData
3b4339fd 1<?php
2
3b4339fd 3/**
4 * Class CRM_Core_MenuTest
5 */
6class CRM_Core_MenuTest extends CiviUnitTestCase {
7
7fe37828
EM
8 /**
9 * @return array
10 */
00be9182 11 public function pathArguments() {
3b4339fd 12 $cases = array(); // array(0 => string $input, 1 => array $expectedOutput)
13 //$cases[] = array(NULL, array());
14 //$cases[] = array('', array());
15 //$cases[] = array('freestanding', array('freestanding' => NULL));
16 $cases[] = array('addSequence=1', array('addSequence' => '1'));
17 $cases[] = array('attachUpload=1', array('attachUpload' => '1'));
18 $cases[] = array('mode=256', array('mode' => '256'));
92915c55
TO
19 $cases[] = array(
20 'mode=256,addSequence=1,attachUpload=1',
28a04ea9 21 array('mode' => '256', 'addSequence' => '1', 'attachUpload' => 1),
92915c55
TO
22 );
23 $cases[] = array(
24 'mode=256,urlToSession=a:b:c:d',
25 array(
26 'mode' => '256',
27 'urlToSession' => array(
28 array('urlVar' => 'a', 'sessionVar' => 'b', 'type' => 'c', 'default' => 'd'),
29 ),
28a04ea9 30 ),
92915c55
TO
31 );
32 $cases[] = array(
33 'mode=256,urlToSession=a:b:c:d;z:y:x:w',
34 array(
35 'mode' => '256',
36 'urlToSession' => array(
37 array('urlVar' => 'a', 'sessionVar' => 'b', 'type' => 'c', 'default' => 'd'),
38 array('urlVar' => 'z', 'sessionVar' => 'y', 'type' => 'x', 'default' => 'w'),
39 ),
28a04ea9 40 ),
92915c55 41 );
3b4339fd 42 $cases[] = array('url=whiz!;.:#=%/|+bang?', array('url' => 'whiz!;.:#=%/|+bang?'));
43 return $cases;
44 }
45
46 /**
47 * @param $inputString
48 * @param $expectedArray
49 * @dataProvider pathArguments
50 */
00be9182 51 public function testGetArrayForPathArgs($inputString, $expectedArray) {
3b4339fd 52 $actual = CRM_Core_Menu::getArrayForPathArgs($inputString);
53 $this->assertEquals($expectedArray, $actual);
54 }
96025800 55
ef10e0b5 56}