20250526
Добавлен класс File, который реализует функционал работы с файлами и выполнение операций над файлами одной командой.
This commit is contained in:
		
							
								
								
									
										62
									
								
								tests/classes/FileTest.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								tests/classes/FileTest.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,62 @@ | ||||
| <?php | ||||
|  | ||||
| namespace goodboyalex\php_components_pack\tests\classes; | ||||
|  | ||||
| use goodboyalex\php_components_pack\classes\File; | ||||
| use PHPUnit\Framework\TestCase; | ||||
|  | ||||
| class FileTest extends TestCase | ||||
| { | ||||
|     public function testExtractFileName () | ||||
|     { | ||||
|         $this->PrepareForTest(); | ||||
|  | ||||
|         $this->assertEquals("test.txt", File::ExtractFileName("c:\\tmp\\test.txt")); | ||||
|         $this->assertEquals("test.txt", File::ExtractFileName("c:/tmp/test.txt")); | ||||
|         $this->assertEquals("test.txt", File::ExtractFileName("\\tmp\\test.txt")); | ||||
|     } | ||||
|  | ||||
|     private function PrepareForTest (): void | ||||
|     { | ||||
|         require_once __DIR__ . '/../../sources/classes/File.php'; | ||||
|     } | ||||
|  | ||||
|     public function testFindFiles () | ||||
|     { | ||||
|         $this->PrepareForTest(); | ||||
|  | ||||
|         $result = File::FindFiles(__DIR__); | ||||
|  | ||||
|         $this->assertIsArray($result); | ||||
|         $this->assertCount(8, $result); | ||||
|     } | ||||
|  | ||||
|     public function testGetRelativePath () | ||||
|     { | ||||
|         $this->PrepareForTest(); | ||||
|  | ||||
|         $fullPath = "c:\\source\\tmp\\test.txt"; | ||||
|  | ||||
|         $basePath = "c:\\source\\"; | ||||
|  | ||||
|         $this->assertEquals("tmp\\test.txt", File::GetRelativePath($fullPath, $basePath)); | ||||
|     } | ||||
|  | ||||
|     public function testExtractFileExtension () | ||||
|     { | ||||
|         $this->PrepareForTest(); | ||||
|  | ||||
|         $this->assertEquals("txt", File::ExtractFileExtension("c:\\tmp\\test.txt")); | ||||
|         $this->assertEquals("txt", File::ExtractFileExtension("c:/tmp/test.txt")); | ||||
|         $this->assertEquals("txt", File::ExtractFileExtension("\\tmp\\test.txt")); | ||||
|     } | ||||
|  | ||||
|     public function testExtractFileNameWithoutExtension () | ||||
|     { | ||||
|         $this->PrepareForTest(); | ||||
|  | ||||
|         $this->assertEquals("test", File::ExtractFileNameWithoutExtension("c:\\tmp\\test.txt")); | ||||
|         $this->assertEquals("test", File::ExtractFileNameWithoutExtension("c:/tmp/test.txt")); | ||||
|         $this->assertEquals("test", File::ExtractFileNameWithoutExtension("\\tmp\\test.txt")); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user