diff --git a/tests/Unit/Util/BasePathTest.php b/tests/Unit/Util/BasePathTest.php new file mode 100644 index 0000000000..e969f963af --- /dev/null +++ b/tests/Unit/Util/BasePathTest.php @@ -0,0 +1,83 @@ + [ + '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(); + } +} diff --git a/tests/src/Util/BasePathTest.php b/tests/src/Util/BasePathTest.php deleted file mode 100644 index bbcaeb359b..0000000000 --- a/tests/src/Util/BasePathTest.php +++ /dev/null @@ -1,82 +0,0 @@ - [ - '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(); - } -}