ommit tests

This commit is contained in:
yair 2025-11-16 05:32:17 +02:00
parent 50f2b370d3
commit c95178829a

View File

@ -5,12 +5,11 @@
# /// # ///
""" """
Test client for UDP exposure control client for UDP camera control
Usage: Usage:
uv run scripts/camera_control.py # Get all camera settings (default) uv run scripts/camera_control.py # Get all camera settings (default)
uv run scripts/camera_control.py get-all # Get all camera settings uv run scripts/camera_control.py get-all # Get all camera settings
uv run scripts/camera_control.py test # Run full test suite
uv run scripts/camera_control.py get-exposure # Get current exposure uv run scripts/camera_control.py get-exposure # Get current exposure
uv run scripts/camera_control.py set-exposure 10 # Set exposure to 10ms uv run scripts/camera_control.py set-exposure 10 # Set exposure to 10ms
uv run scripts/camera_control.py get-framerate # Get current framerate uv run scripts/camera_control.py get-framerate # Get current framerate
@ -25,7 +24,7 @@ Usage:
uv run scripts/camera_control.py set-gain-boost 1 # Enable gain boost uv run scripts/camera_control.py set-gain-boost 1 # Enable gain boost
uv run scripts/camera_control.py status # Get pipeline status uv run scripts/camera_control.py status # Get pipeline status
This script provides both individual control commands and full test suite functionality This script provides control commands
for the UDP control interface for the IDS uEye camera. for the UDP control interface for the IDS uEye camera.
Make sure launch-ids.py is running before executing commands. Make sure launch-ids.py is running before executing commands.
""" """
@ -60,22 +59,6 @@ def send_command(command, host="127.0.0.1", port=5001, timeout=1.0):
finally: finally:
sock.close() sock.close()
def print_test(test_num, description, command, response):
"""Print formatted test result"""
print(f"\nTest {test_num}: {description}")
print(f" Command: {command}")
print(f" Response: {response}")
# Check if response indicates success
if response.startswith("OK"):
print(" ✓ PASS")
elif response.startswith("ERROR"):
if "OUT_OF_RANGE" in response or "INVALID" in response:
print(" ✓ PASS (Expected error)")
else:
print(" ✗ FAIL (Unexpected error)")
else:
print(" ? UNKNOWN")
def simple_command(command, description="Command"): def simple_command(command, description="Command"):
"""Execute a single command and print the result""" """Execute a single command and print the result"""
@ -119,97 +102,13 @@ def get_all_settings():
print("=" * 70) print("=" * 70)
return all_success return all_success
def run_full_tests():
"""Run the full test suite (original functionality)"""
print("=" * 70)
print("UDP Exposure Control Test Client")
print("=" * 70)
print("Testing UDP control interface on 127.0.0.1:5001")
print()
# Check if server is reachable
print("Checking if control server is reachable...")
response = send_command("STATUS", timeout=2.0)
if "Timeout" in response:
print("✗ FAILED: Control server not responding")
print(" Make sure launch-ids.py is running first!")
sys.exit(1)
print("✓ Control server is reachable\n")
time.sleep(0.2)
# Test 1: Get current exposure
response = send_command("GET_EXPOSURE")
print_test(1, "Get current exposure", "GET_EXPOSURE", response)
time.sleep(0.2)
# Test 2: Set exposure to 10ms
response = send_command("SET_EXPOSURE 10")
print_test(2, "Set exposure to 10ms", "SET_EXPOSURE 10", response)
time.sleep(5.2)
# Test 3: Verify exposure was set
response = send_command("GET_EXPOSURE")
print_test(3, "Verify exposure changed", "GET_EXPOSURE", response)
time.sleep(0.2)
# Test 4: Set exposure to 2ms
response = send_command("SET_EXPOSURE 2")
print_test(4, "Set exposure to 2ms", "SET_EXPOSURE 2", response)
time.sleep(0.2)
# Test 5: Get framerate
response = send_command("GET_FRAMERATE")
print_test(5, "Get current framerate", "GET_FRAMERATE", response)
time.sleep(0.2)
# Test 6: Set framerate
response = send_command("SET_FRAMERATE 44")
print_test(6, "Set framerate to 44 fps", "SET_FRAMERATE 44", response)
time.sleep(0.2)
# Test 7: Verify framerate
response = send_command("GET_FRAMERATE")
print_test(7, "Verify framerate changed", "GET_FRAMERATE", response)
time.sleep(0.2)
# Test 8: Get status
response = send_command("STATUS")
print_test(8, "Get pipeline status", "STATUS", response)
time.sleep(0.2)
# Test 9: Invalid command
response = send_command("INVALID_CMD")
print_test(9, "Send invalid command", "INVALID_CMD", response)
time.sleep(0.2)
# Test 14: Restore original exposure (2ms)
response = send_command("SET_EXPOSURE 2")
print_test(14, "Restore exposure to 2ms", "SET_EXPOSURE 2", response)
time.sleep(0.2)
# Test 15: Restore original framerate (22 fps)
response = send_command("SET_FRAMERATE 22")
print_test(15, "Restore framerate to 22 fps", "SET_FRAMERATE 22", response)
print()
print("=" * 70)
print("Test completed!")
print()
print("Quick reference:")
print(" echo 'SET_EXPOSURE 10' | nc -u 127.0.0.1 5001")
print(" echo 'GET_EXPOSURE' | nc -u 127.0.0.1 5001")
print(" echo 'STATUS' | nc -u 127.0.0.1 5001")
print("=" * 70)
def main(): def main():
"""Main function with argument parsing""" """Main function with argument parsing"""
parser = argparse.ArgumentParser( parser = argparse.ArgumentParser(
description="UDP Exposure Control Test Client", description="UDP Exposure Control Client",
epilog=""" epilog="""
Examples: Examples:
%(prog)s # Get all camera settings (default) %(prog)s # Get all camera settings (default)
%(prog)s test # Run full test suite
%(prog)s get-all # Get all camera settings %(prog)s get-all # Get all camera settings
%(prog)s get-exposure # Get current exposure %(prog)s get-exposure # Get current exposure
%(prog)s set-exposure 10 # Set exposure to 10ms %(prog)s set-exposure 10 # Set exposure to 10ms
@ -230,7 +129,7 @@ Examples:
parser.add_argument('command', parser.add_argument('command',
nargs='?', nargs='?',
choices=['test', 'get-all', 'get-exposure', 'get-exposure-range', 'set-exposure', choices=['get-all', 'get-exposure', 'get-exposure-range', 'set-exposure',
'get-framerate', 'set-framerate', 'get-gain', 'set-gain', 'get-framerate', 'set-framerate', 'get-gain', 'set-gain',
'get-auto-exposure', 'set-auto-exposure', 'get-auto-exposure', 'set-auto-exposure',
'get-auto-gain', 'set-auto-gain', 'get-auto-gain', 'set-auto-gain',
@ -262,10 +161,6 @@ Examples:
success = get_all_settings() success = get_all_settings()
sys.exit(0 if success else 1) sys.exit(0 if success else 1)
# Handle test command (full test suite)
if args.command == 'test':
run_full_tests()
return
# Handle individual commands # Handle individual commands
if args.command == 'get-all': if args.command == 'get-all':