mirror of
https://github.com/friendica/friendica
synced 2025-01-03 15:22:19 +00:00
refactor BasePathTest
This commit is contained in:
parent
704ddc2089
commit
75772d874f
2 changed files with 83 additions and 82 deletions
83
tests/Unit/Util/BasePathTest.php
Normal file
83
tests/Unit/Util/BasePathTest.php
Normal file
|
@ -0,0 +1,83 @@
|
|||
<?php
|
||||
|
||||
// Copyright (C) 2010-2024, the Friendica project
|
||||
// SPDX-FileCopyrightText: 2010-2024 the Friendica project
|
||||
//
|
||||
// SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
|
||||
namespace Friendica\Test\Unit\Util;
|
||||
|
||||
use Friendica\Util\BasePath;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class BasePathTest extends TestCase
|
||||
{
|
||||
public static function getDataPaths(): array
|
||||
{
|
||||
return [
|
||||
'fullPath' => [
|
||||
'server' => [],
|
||||
'baseDir' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
'expected' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'relative' => [
|
||||
'server' => [],
|
||||
'baseDir' => 'config',
|
||||
'expected' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'document_root' => [
|
||||
'server' => [
|
||||
'DOCUMENT_ROOT' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'baseDir' => '/noooop',
|
||||
'expected' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'pwd' => [
|
||||
'server' => [
|
||||
'PWD' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'baseDir' => '/noooop',
|
||||
'expected' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'no_overwrite' => [
|
||||
'server' => [
|
||||
'DOCUMENT_ROOT' => dirname(__DIR__, 3),
|
||||
'PWD' => dirname(__DIR__, 3),
|
||||
],
|
||||
'baseDir' => 'config',
|
||||
'expected' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'no_overwrite_if_invalid' => [
|
||||
'server' => [
|
||||
'DOCUMENT_ROOT' => '/nopopop',
|
||||
'PWD' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'baseDir' => '/noatgawe22fafa',
|
||||
'expected' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the basepath determination
|
||||
* @dataProvider getDataPaths
|
||||
*/
|
||||
public function testDetermineBasePath(array $server, string $baseDir, string $expected): void
|
||||
{
|
||||
$basepath = new BasePath($baseDir, $server);
|
||||
self::assertEquals($expected, $basepath->getPath());
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the basepath determination with a complete wrong path
|
||||
*/
|
||||
public function testFailedBasePath(): void
|
||||
{
|
||||
$basepath = new BasePath('/now23452sgfgas', []);
|
||||
|
||||
$this->expectException(\Exception::class);
|
||||
$this->expectExceptionMessage('\'/now23452sgfgas\' is not a valid basepath');
|
||||
|
||||
$basepath->getPath();
|
||||
}
|
||||
}
|
|
@ -1,82 +0,0 @@
|
|||
<?php
|
||||
|
||||
// Copyright (C) 2010-2024, the Friendica project
|
||||
// SPDX-FileCopyrightText: 2010-2024 the Friendica project
|
||||
//
|
||||
// SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
|
||||
namespace Friendica\Test\src\Util;
|
||||
|
||||
use Friendica\Test\MockedTestCase;
|
||||
use Friendica\Util\BasePath;
|
||||
|
||||
class BasePathTest extends MockedTestCase
|
||||
{
|
||||
public function dataPaths()
|
||||
{
|
||||
return [
|
||||
'fullPath' => [
|
||||
'server' => [],
|
||||
'input' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
'output' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'relative' => [
|
||||
'server' => [],
|
||||
'input' => 'config',
|
||||
'output' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'document_root' => [
|
||||
'server' => [
|
||||
'DOCUMENT_ROOT' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'input' => '/noooop',
|
||||
'output' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'pwd' => [
|
||||
'server' => [
|
||||
'PWD' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'input' => '/noooop',
|
||||
'output' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'no_overwrite' => [
|
||||
'server' => [
|
||||
'DOCUMENT_ROOT' => dirname(__DIR__, 3),
|
||||
'PWD' => dirname(__DIR__, 3),
|
||||
],
|
||||
'input' => 'config',
|
||||
'output' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'no_overwrite_if_invalid' => [
|
||||
'server' => [
|
||||
'DOCUMENT_ROOT' => '/nopopop',
|
||||
'PWD' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
],
|
||||
'input' => '/noatgawe22fafa',
|
||||
'output' => dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'config',
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the basepath determination
|
||||
* @dataProvider dataPaths
|
||||
*/
|
||||
public function testDetermineBasePath(array $server, $input, $output)
|
||||
{
|
||||
$basepath = new BasePath($input, $server);
|
||||
self::assertEquals($output, $basepath->getPath());
|
||||
}
|
||||
|
||||
/**
|
||||
* Test the basepath determination with a complete wrong path
|
||||
*/
|
||||
public function testFailedBasePath()
|
||||
{
|
||||
$this->expectException(\Exception::class);
|
||||
$this->expectExceptionMessageMatches("/(.*) is not a valid basepath/");
|
||||
|
||||
$basepath = new BasePath('/now23452sgfgas', []);
|
||||
$basepath->getPath();
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue