32 lines
		
	
	
		
			913 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			913 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace nulib\app\cli;
 | |
| 
 | |
| use nur\t\TestCase;
 | |
| 
 | |
| class ArgDefsTest extends TestCase {
 | |
|   function testBase() {
 | |
|     $argDefs = new ArgDefs([
 | |
|       ["-a"],
 | |
|       ["--longb"],
 | |
|       ["-c", "--longc"],
 | |
|       ["-m:", "--mandatory"],
 | |
|       ["-o::", "--optional"],
 | |
|       ["-x", "--x1"],
 | |
|       ["-x", "--x2"],
 | |
|     ]);
 | |
| 
 | |
|     self::assertSame(["--"]
 | |
|       , $argDefs->normalize([]));
 | |
|     self::assertSame(["--", "a", "b"]
 | |
|       , $argDefs->normalize(["a", "b"]));
 | |
|     self::assertSame(["-a", "--mandatory", "x", "--mandatory", "y", "--", "z", "x"]
 | |
|       , $argDefs->normalize(["-a", "--m", "x", "z", "--m=y", "x"]));
 | |
|     self::assertSame(["-m", "x", "-m", "y", "--"]
 | |
|       , $argDefs->normalize(["-mx", "-m", "y"]));
 | |
|     self::assertSame(["-ox", "-o", "--", "y"]
 | |
|       , $argDefs->normalize(["-ox", "-o", "y"]));
 | |
|     self::assertSame(["-a", "--", "-a", "-c"]
 | |
|       , $argDefs->normalize(["-a", "--", "-a", "-c"]));
 | |
|   }
 | |
| }
 |