You've already forked qlg.tsgz.moe
							
							
		
			
				
	
	
		
			78 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env php
 | |
| <?php
 | |
| define('BASE_DIR', dirname(__DIR__));
 | |
| if (empty($argv[1]))
 | |
| {
 | |
|     $DIR = BASE_DIR . '/tests';
 | |
| }
 | |
| else
 | |
| {
 | |
|     $DIR = BASE_DIR . '/' . $argv[1];
 | |
| }
 | |
| 
 | |
| $role = empty($argv[2]) ? 'test' : 'src';
 | |
| $cmd = empty($argv[3]) ? 'list' : 'check';
 | |
| 
 | |
| $_files = [];
 | |
| search($DIR, $_files);
 | |
| 
 | |
| foreach ($_files as $f)
 | |
| {
 | |
|     $filename = str_replace($DIR . '/', '', $f);
 | |
|     if ($cmd == 'list')
 | |
|     {
 | |
|         echo '<file name="' . $filename . '" role="' . $role . '" />' . "\n";
 | |
|     }
 | |
|     elseif ($cmd == 'check')
 | |
|     {
 | |
|         if (!inPackage($filename))
 | |
|         {
 | |
|             echo "$filename\n";
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| function search($path, &$_files)
 | |
| {
 | |
|     $dirs = _scandir($path);
 | |
|     foreach ($dirs as $d)
 | |
|     {
 | |
|         $_path = $path . '/' . $d;
 | |
|         if (!is_dir($_path))
 | |
|         {
 | |
|             $_files[] = $_path;
 | |
|             continue;
 | |
|         }
 | |
|         else
 | |
|         {
 | |
|             search($_path, $_files);
 | |
|         }
 | |
|     }
 | |
| }
 | |
| 
 | |
| function _scandir($dir)
 | |
| {
 | |
|     $list = scandir($dir);
 | |
|     return array_filter($list, function ($f)
 | |
|     {
 | |
|         return $f[0] !== '.';
 | |
|     });
 | |
| }
 | |
| 
 | |
| function inPackage($file)
 | |
| {
 | |
|     static $content = null;
 | |
|     if (!$content)
 | |
|     {
 | |
|         $content = file_get_contents(BASE_DIR . '/package.xml');
 | |
|     }
 | |
|     if (strpos($content, $file) === false)
 | |
|     {
 | |
|         return false;
 | |
|     }
 | |
|     else
 | |
|     {
 | |
|         return true;
 | |
|     }
 | |
| }
 |