summaryrefslogtreecommitdiffstats
path: root/tests/lib/urlgenerator.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/urlgenerator.php')
-rw-r--r--tests/lib/urlgenerator.php73
1 files changed, 70 insertions, 3 deletions
diff --git a/tests/lib/urlgenerator.php b/tests/lib/urlgenerator.php
index 875a7f06580..65c7fb56943 100644
--- a/tests/lib/urlgenerator.php
+++ b/tests/lib/urlgenerator.php
@@ -8,21 +8,79 @@
class Test_Urlgenerator extends PHPUnit_Framework_TestCase {
+ /**
+ * @small
+ * @brief test linkTo URL construction
+ * @dataProvider provideDocRootAppUrlParts
+ */
+ public function testLinkToDocRoot($app, $file, $args, $expectedResult) {
+ \OC::$WEBROOT = '';
+ $config = $this->getMock('\OCP\IConfig');
+ $urlGenerator = new \OC\URLGenerator($config);
+ $result = $urlGenerator->linkTo($app, $file, $args);
+
+ $this->assertEquals($expectedResult, $result);
+ }
+
+ /**
+ * @small
+ * @brief test linkTo URL construction in sub directory
+ * @dataProvider provideSubDirAppUrlParts
+ */
+ public function testLinkToSubDir($app, $file, $args, $expectedResult) {
+ \OC::$WEBROOT = '/owncloud';
+ $config = $this->getMock('\OCP\IConfig');
+ $urlGenerator = new \OC\URLGenerator($config);
+ $result = $urlGenerator->linkTo($app, $file, $args);
+
+ $this->assertEquals($expectedResult, $result);
+ }
+
+ public function provideDocRootAppUrlParts() {
+ return array(
+ array('files', 'index.php', array(), '/index.php/apps/files'),
+ array('files', 'index.php', array('trut' => 'trat', 'dut' => 'dat'), '/index.php/apps/files?trut=trat&dut=dat'),
+ array('', 'index.php', array('trut' => 'trat', 'dut' => 'dat'), '/index.php?trut=trat&dut=dat'),
+ );
+ }
+
+ public function provideSubDirAppUrlParts() {
+ return array(
+ array('files', 'index.php', array(), '/owncloud/index.php/apps/files'),
+ array('files', 'index.php', array('trut' => 'trat', 'dut' => 'dat'), '/owncloud/index.php/apps/files?trut=trat&dut=dat'),
+ array('', 'index.php', array('trut' => 'trat', 'dut' => 'dat'), '/owncloud/index.php?trut=trat&dut=dat'),
+ );
+ }
/**
* @small
* @brief test absolute URL construction
- * @dataProvider provideURLs
+ * @dataProvider provideDocRootURLs
*/
- function testGetAbsoluteURL($url, $expectedResult) {
+ function testGetAbsoluteURLDocRoot($url, $expectedResult) {
+ \OC::$WEBROOT = '';
$urlGenerator = new \OC\URLGenerator(null);
$result = $urlGenerator->getAbsoluteURL($url);
$this->assertEquals($expectedResult, $result);
}
- public function provideURLs() {
+ /**
+ * @small
+ * @brief test absolute URL construction
+ * @dataProvider provideSubDirURLs
+ */
+ function testGetAbsoluteURLSubDir($url, $expectedResult) {
+
+ \OC::$WEBROOT = '/owncloud';
+ $urlGenerator = new \OC\URLGenerator(null);
+ $result = $urlGenerator->getAbsoluteURL($url);
+
+ $this->assertEquals($expectedResult, $result);
+ }
+
+ public function provideDocRootURLs() {
return array(
array("index.php", "http://localhost/index.php"),
array("/index.php", "http://localhost/index.php"),
@@ -30,5 +88,14 @@ class Test_Urlgenerator extends PHPUnit_Framework_TestCase {
array("apps/index.php", "http://localhost/apps/index.php"),
);
}
+
+ public function provideSubDirURLs() {
+ return array(
+ array("index.php", "http://localhost/owncloud/index.php"),
+ array("/index.php", "http://localhost/owncloud/index.php"),
+ array("/apps/index.php", "http://localhost/owncloud/apps/index.php"),
+ array("apps/index.php", "http://localhost/owncloud/apps/index.php"),
+ );
+ }
}