mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-10-31 10:26:48 +08:00 
			
		
		
		
	 b9ae4ffe9a
			
		
	
	b9ae4ffe9a
	
	
	
		
			
			* fix(csharp): unified array statement * feature: add workflow for go/js/ts/zig * fix python UnicodeDecodeError on windows * Update space_complexity.go * Update space_complexity_test.go * Update space_complexity.go * remove nodejs, zip workflow --------- Co-authored-by: Yudong Jin <krahets@163.com>
		
			
				
	
	
		
			34 lines
		
	
	
		
			951 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			951 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| import os
 | |
| import glob
 | |
| import subprocess
 | |
| 
 | |
| env = os.environ.copy()
 | |
| env["PYTHONIOENCODING"] = "utf-8"
 | |
| 
 | |
| if __name__ == "__main__":
 | |
|     # find source code files
 | |
|     src_paths = sorted(glob.glob("codes/python/chapter_*/*.py"))
 | |
|     errors = []
 | |
| 
 | |
|     # run python code
 | |
|     for src_path in src_paths:
 | |
|         process = subprocess.Popen(
 | |
|             ["python", src_path],
 | |
|             stdout=subprocess.PIPE,
 | |
|             stderr=subprocess.PIPE,
 | |
|             text=True,
 | |
|             env=env,
 | |
|             encoding='utf-8'
 | |
|         )
 | |
|         # Wait for the process to complete, and get the output and error messages
 | |
|         stdout, stderr = process.communicate()
 | |
|         # Check the exit status
 | |
|         exit_status = process.returncode
 | |
|         if exit_status != 0:
 | |
|             errors.append(stderr)
 | |
| 
 | |
|     print(f"Tested {len(src_paths)} files")
 | |
|     print(f"Found exception in {len(errors)} files")
 | |
|     if len(errors) > 0:
 | |
|         raise RuntimeError("\n\n".join(errors))
 |