#!/usr/bin/env python3
"""Test script for mcpmake - demonstrates argument parsing."""
import argparse
import sys
import time
def main():
parser = argparse.ArgumentParser(
description="Test script that processes data with various options"
)
parser.add_argument(
"--name",
required=True,
help="Name to greet"
)
parser.add_argument(
"--count",
type=int,
default=1,
help="Number of times to repeat the greeting (default: 1)"
)
parser.add_argument(
"--delay",
type=float,
default=0,
help="Delay in seconds between greetings (default: 0)"
)
parser.add_argument(
"--verbose",
action="store_true",
help="Enable verbose output"
)
parser.add_argument(
"--output-file",
type=str,
help="Optional file to write output to"
)
args = parser.parse_args()
if args.verbose:
print(f"Starting greeter script...", file=sys.stderr)
print(f"Arguments: name={args.name}, count={args.count}, delay={args.delay}", file=sys.stderr)
output_lines = []
for i in range(args.count):
message = f"Hello, {args.name}! (greeting {i+1}/{args.count})"
print(message)
output_lines.append(message)
if args.delay > 0 and i < args.count - 1:
time.sleep(args.delay)
if args.output_file:
with open(args.output_file, 'w') as f:
f.write('\n'.join(output_lines))
print(f"\nOutput saved to {args.output_file}")
if args.verbose:
print(f"Completed successfully!", file=sys.stderr)
return 0
if __name__ == "__main__":
sys.exit(main())