1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
<?php
namespace Illuminate\Tests\Filesystem;
use PHPUnit\Framework\Attributes\DataProvider;
use PHPUnit\Framework\Attributes\RequiresOperatingSystem;
use PHPUnit\Framework\TestCase;
use function Illuminate\Filesystem\join_paths;
class JoinPathsHelperTest extends TestCase
{
#[RequiresOperatingSystem('Linux|DAR')]
#[DataProvider('unixDataProvider')]
public function testItCanMergePathsForUnix(string $expected, string $given)
{
$this->assertSame($expected, $given);
}
public static function unixDataProvider()
{
yield ['app/Http/Kernel.php', join_paths('app', 'Http', 'Kernel.php')];
yield ['app/Http/Kernel.php', join_paths('app', '', 'Http', 'Kernel.php')];
}
#[RequiresOperatingSystem('Windows')]
#[DataProvider('windowsDataProvider')]
public function testItCanMergePathsForWindows(string $expected, string $given)
{
$this->assertSame($expected, $given);
}
public static function windowsDataProvider()
{
yield ['app\Http\Kernel.php', join_paths('app', 'Http', 'Kernel.php')];
yield ['app\Http\Kernel.php', join_paths('app', '', 'Http', 'Kernel.php')];
}
}
|