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