SXXXXXXX_ProjectUtility/tools/dummy_script/dummy.py
2025-04-29 10:09:19 +02:00

47 lines
1.7 KiB
Python

# tools/dummy_script/dummy.py
import time
import sys
import argparse
print("Dummy script started!")
sys.stdout.flush() # Assicura che l'output sia visibile subito
parser = argparse.ArgumentParser()
parser.add_argument("--verbose", action="store_true", help="Enable verbose output")
parser.add_argument("--user-text", type=str, default="Default text", help="User provided text")
parser.add_argument("--iterations", type=int, default=1, help="Number of iterations")
parser.add_argument("--enable-feature", action="store_true", help="Boolean flag")
parser.add_argument("--output-dir", type=str, help="Output directory path")
try:
# Parse only known args defined above
# This prevents errors if ProjectUtility sends extra args not defined here yet
args, unknown = parser.parse_known_args()
if args.verbose:
print("Verbose mode enabled.")
print(f"Received unknown arguments: {unknown}") # Show args not defined in dummy.py
print(f"User text: {args.user_text}")
print(f"Iterations: {args.iterations}")
print(f"Feature enabled: {args.enable_feature}")
if args.output_dir:
print(f"Output directory: {args.output_dir}")
for i in range(args.iterations):
print(f"Processing iteration {i+1}...")
time.sleep(0.5) # Simulate work
if i % 2 == 0:
print(f"Standard output line {i+1}", file=sys.stdout)
else:
print(f"Error output line {i+1}", file=sys.stderr) # Print some errors too
sys.stdout.flush()
sys.stderr.flush()
print("Dummy script finished successfully.")
sys.exit(0) # Explicit success exit code
except Exception as e:
print(f"ERROR in dummy script: {e}", file=sys.stderr)
sys.stderr.flush()
sys.exit(1) # Explicit failure exit code