Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDaniel Kesselberg <mail@danielkesselberg.de>2018-09-10 23:33:35 +0300
committerDaniel Kesselberg <mail@danielkesselberg.de>2018-09-10 23:33:35 +0300
commit62c03beb1d2dc133542c088e6c72b201211ccfba (patch)
tree50b33ce5f4cfda5b120df995f7aca4db81c34718 /tests
parent210b0f092f93fa30f5c3542f684e55cc3ba5532f (diff)
Extract logic for webroot into method and add test
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/SetupTest.php44
1 files changed, 35 insertions, 9 deletions
diff --git a/tests/lib/SetupTest.php b/tests/lib/SetupTest.php
index e6e9fb5c56c..fe3b1b54d23 100644
--- a/tests/lib/SetupTest.php
+++ b/tests/lib/SetupTest.php
@@ -10,6 +10,7 @@ namespace Test;
use bantu\IniGetWrapper\IniGetWrapper;
use OC\Installer;
+use OC\Setup;
use OC\SystemConfig;
use OCP\Defaults;
use OCP\IL10N;
@@ -45,7 +46,7 @@ class SetupTest extends \Test\TestCase {
$this->logger = $this->createMock(ILogger::class);
$this->random = $this->createMock(ISecureRandom::class);
$this->installer = $this->createMock(Installer::class);
- $this->setupClass = $this->getMockBuilder('\OC\Setup')
+ $this->setupClass = $this->getMockBuilder(Setup::class)
->setMethods(['class_exists', 'is_callable', 'getAvailableDbDriversForPdo'])
->setConstructorArgs([$this->config, $this->iniWrapper, $this->l10n, $this->defaults, $this->logger, $this->random, $this->installer])
->getMock();
@@ -56,7 +57,7 @@ class SetupTest extends \Test\TestCase {
->expects($this->once())
->method('getValue')
->will($this->returnValue(
- array('sqlite', 'mysql', 'oci')
+ ['sqlite', 'mysql', 'oci']
));
$this->setupClass
->expects($this->once())
@@ -67,9 +68,9 @@ class SetupTest extends \Test\TestCase {
->method('getAvailableDbDriversForPdo')
->will($this->returnValue(['sqlite']));
$result = $this->setupClass->getSupportedDatabases();
- $expectedResult = array(
+ $expectedResult = [
'sqlite' => 'SQLite'
- );
+ ];
$this->assertSame($expectedResult, $result);
}
@@ -79,7 +80,7 @@ class SetupTest extends \Test\TestCase {
->expects($this->once())
->method('getValue')
->will($this->returnValue(
- array('sqlite', 'mysql', 'oci', 'pgsql')
+ ['sqlite', 'mysql', 'oci', 'pgsql']
));
$this->setupClass
->expects($this->any())
@@ -91,7 +92,7 @@ class SetupTest extends \Test\TestCase {
->will($this->returnValue([]));
$result = $this->setupClass->getSupportedDatabases();
- $this->assertSame(array(), $result);
+ $this->assertSame([], $result);
}
public function testGetSupportedDatabasesWithAllWorking() {
@@ -99,7 +100,7 @@ class SetupTest extends \Test\TestCase {
->expects($this->once())
->method('getValue')
->will($this->returnValue(
- array('sqlite', 'mysql', 'pgsql', 'oci')
+ ['sqlite', 'mysql', 'pgsql', 'oci']
));
$this->setupClass
->expects($this->any())
@@ -110,12 +111,12 @@ class SetupTest extends \Test\TestCase {
->method('getAvailableDbDriversForPdo')
->will($this->returnValue(['sqlite', 'mysql', 'pgsql']));
$result = $this->setupClass->getSupportedDatabases();
- $expectedResult = array(
+ $expectedResult = [
'sqlite' => 'SQLite',
'mysql' => 'MySQL/MariaDB',
'pgsql' => 'PostgreSQL',
'oci' => 'Oracle'
- );
+ ];
$this->assertSame($expectedResult, $result);
}
@@ -130,4 +131,29 @@ class SetupTest extends \Test\TestCase {
->will($this->returnValue('NotAnArray'));
$this->setupClass->getSupportedDatabases();
}
+
+ /**
+ * @dataProvider findWebRootProvider
+ */
+ public function testFindWebRootCli($url, $webRoot) {
+ $this->config
+ ->expects($this->once())
+ ->method('getValue')
+ ->will($this->returnValue($url));
+ \OC::$CLI = true;
+
+ $this->assertEquals(
+ $webRoot,
+ $this->setupClass::findWebRoot($this->config)
+ );
+ }
+
+ public function findWebRootProvider(): array {
+ return [
+ 'https://www.example.com/nextcloud' => ['https://www.example.com/nextcloud', '/nextcloud'],
+ 'https://www.example.com/' => ['https://www.example.com/', ''],
+ 'https://www.example.com' => ['https://www.example.com', false],
+ 'empty' => ['', false],
+ ];
+ }
}