mirror of
https://github.com/krahets/hello-algo.git
synced 2026-01-12 00:04:24 +08:00
* Review the EN heading format. * Fix pythontutor headings. * Fix pythontutor headings. * bug fixes * Fix headings in **/summary.md * Revisit the CN-to-EN translation for Python code using Claude-4.5 * Revisit the CN-to-EN translation for Java code using Claude-4.5 * Revisit the CN-to-EN translation for Cpp code using Claude-4.5. * Fix the dictionary. * Fix cpp code translation for the multipart strings. * Translate Go code to English. * Update workflows to test EN code. * Add EN translation for C. * Add EN translation for CSharp. * Add EN translation for Swift. * Trigger the CI check. * Revert. * Update en/hash_map.md * Add the EN version of Dart code. * Add the EN version of Kotlin code. * Add missing code files. * Add the EN version of JavaScript code. * Add the EN version of TypeScript code. * Fix the workflows. * Add the EN version of Ruby code. * Add the EN version of Rust code. * Update the CI check for the English version code. * Update Python CI check. * Fix cmakelists for en/C code. * Fix Ruby comments
34 lines
938 B
Python
34 lines
938 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("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))
|