mirror of
https://github.com/zhamao-robot/zhamao-framework.git
synced 2026-07-21 07:35:34 +08:00
update DataProvider relative=null condition and add tests
This commit is contained in:
@@ -29,8 +29,32 @@ class DataProviderTest extends TestCase
|
||||
|
||||
public function testScanDirFiles(): void
|
||||
{
|
||||
// 常规测试
|
||||
$files = DataProvider::scanDirFiles(SOURCE_ROOT_DIR . '/src/Module');
|
||||
$this->assertContains(SOURCE_ROOT_DIR . '/src/Module/Example/Hello.php', $files);
|
||||
// 检查文件夹不存在的判断
|
||||
$random_id = uuidgen();
|
||||
$dir = '/tmp/' . $random_id;
|
||||
// 检查目录不存在是否返回false
|
||||
$this->assertFalse(DataProvider::scanDirFiles($dir));
|
||||
mkdir($dir);
|
||||
// 检查目录存在时返回空
|
||||
$this->assertEquals([], DataProvider::scanDirFiles($dir));
|
||||
chmod($dir, 000);
|
||||
// 目录无权限时也返回false
|
||||
$this->assertFalse(DataProvider::scanDirFiles($dir));
|
||||
chmod($dir, 0755);
|
||||
mkdir($dir . '/test');
|
||||
file_put_contents($dir . '/test/a.txt', 'Hello world!');
|
||||
// 检查目录下文件是否正确返回
|
||||
$this->assertEquals([$dir . '/test/a.txt'], DataProvider::scanDirFiles($dir));
|
||||
// 检查不递归时包含目录的模式
|
||||
$this->assertEquals([], DataProvider::scanDirFiles($dir, false));
|
||||
$this->assertEquals([$dir . '/test'], DataProvider::scanDirFiles($dir, false, false, true));
|
||||
// 检查相对目录是否能正常返回
|
||||
$this->assertEquals(['test/a.txt'], DataProvider::scanDirFiles($dir, true, true));
|
||||
// relative传入奇怪的东西就返回false
|
||||
$this->assertFalse(DataProvider::scanDirFiles($dir, true, null, true));
|
||||
}
|
||||
|
||||
public function testGetFrameworkRootDir(): void
|
||||
|
||||
Reference in New Issue
Block a user