mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-29 13:42:37 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			28 lines
		
	
	
	
		
			752 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
	
		
			752 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #/bin/sh
 | |
| 
 | |
| setopt --verbose
 | |
| 
 | |
| rm -rf shell-test
 | |
| mkdir shell-test
 | |
| cd shell-test
 | |
| 
 | |
|     # Simple sequence (grouping)
 | |
|     { echo test > testfile }
 | |
|     test "$(cat testfile)" = "test" || echo cannot write to file in subshell && exit 1
 | |
| 
 | |
|     # Simple sequence - many commands
 | |
|     { echo test1 > testfile; echo test2 > testfile }
 | |
|     test "$(cat testfile)" = "test2" || echo cannot write to file in subshell 2 && exit 1
 | |
| 
 | |
| 
 | |
|     # Does it exit with the last exit code?
 | |
|     { test -z "a" }
 | |
|     exitcode=$?
 | |
|     test "$exitcode" -eq 1 || echo exits with $exitcode when it should exit with 1 && exit 1
 | |
| 
 | |
|     { test -z "a" || echo test }
 | |
|     exitcode=$?
 | |
|     test "$exitcode" -eq 0 || echo exits with $exitcode when it should exit with 0 && exit 1
 | |
| 
 | |
| cd ..
 | |
| rm -rf shell-test
 | 
