77c245751a56ba93c096d6cec3a3068b9fdc9db7
[Packages/TYPO3.CMS.git] / tests / Unit / t3lib / utility / class.t3lib_utility_httpTest.php
1 <?php
2 /***************************************************************
3 * Copyright notice
4 *
5 * (c) 2012 Oliver Hader <oliver.hader@typo3.org>
6 * All rights reserved
7 *
8 * This script is part of the TYPO3 project. The TYPO3 project is
9 * free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * The GNU General Public License can be found at
15 * http://www.gnu.org/copyleft/gpl.html.
16 * A copy is found in the textfile GPL.txt and important notices to the license
17 * from the author is found in LICENSE.txt distributed with these scripts.
18 *
19 *
20 * This script is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 * GNU General Public License for more details.
24 *
25 * This copyright notice MUST APPEAR in all copies of the script!
26 ***************************************************************/
27
28 /**
29 * Testcase for class t3lib_utility_Http
30 *
31 * @author Oliver Hader <oliver.hader@typo3.org>
32 *
33 * @package TYPO3
34 * @subpackage t3lib
35 */
36
37 class t3lib_utility_HttpTest extends tx_phpunit_testcase {
38 /**
39 * @param array $urlParts
40 * @param string $expected
41 * @dataProvider isUrlBuiltCorrectlyDataProvider
42 * @test
43 */
44 public function isUrlBuiltCorrectly(array $urlParts, $expected) {
45 $url = t3lib_utility_Http::buildUrl($urlParts);
46 $this->assertEquals($expected, $url);
47 }
48
49 /**
50 * @return array
51 */
52 public function isUrlBuiltCorrectlyDataProvider() {
53 return array(
54 'rebuild url withouth scheme' => array(
55 parse_url('typo3.org/path/index.php'),
56 'typo3.org/path/index.php',
57 ),
58 'rebuild url with scheme' => array(
59 parse_url('http://typo3.org/path/index.php'),
60 'http://typo3.org/path/index.php',
61 ),
62 'rebuild url with all properties' => array(
63 parse_url('http://editor:secret@typo3.org/path/index.php?query=data#fragment'),
64 'http://editor:secret@typo3.org/path/index.php?query=data#fragment',
65 ),
66 'url without username, but password' => array(
67 array(
68 'scheme' => 'http',
69 'pass' => 'secrept',
70 'host' => 'typo3.org'
71 ),
72 'http://typo3.org',
73 )
74 );
75 }
76 }
77
78 ?>