Spaces:
Sleeping
Sleeping
| import requests | |
| import os | |
| import sys | |
| # Configuration | |
| BASE_URL = 'http://localhost:5000' | |
| TEST_IMAGE_PATH = '/home/juanquy/dev/MorphGuard/data/datasets/morph_detection/morph/dim_a/morph_1.png' | |
| # Find a valid image if specific path doesn't exist | |
| if not os.path.exists(TEST_IMAGE_PATH): | |
| # Search for any image in dataset | |
| base_dir = '/home/juanquy/dev/MorphGuard/data/datasets/morph_detection/morph' | |
| for root, dirs, files in os.walk(base_dir): | |
| for file in files: | |
| if file.lower().endswith(('.png', '.jpg', '.jpeg')): | |
| TEST_IMAGE_PATH = os.path.join(root, file) | |
| break | |
| if os.path.exists(TEST_IMAGE_PATH): | |
| break | |
| print(f"Testing with image: {TEST_IMAGE_PATH}") | |
| def test_demorph(): | |
| url = f"{BASE_URL}/api/demorph" | |
| if not os.path.exists(TEST_IMAGE_PATH): | |
| print("Error: No test image found.") | |
| sys.exit(1) | |
| # Create test payload | |
| files = { | |
| 'image': open(TEST_IMAGE_PATH, 'rb') | |
| } | |
| data = { | |
| 'method': 'gan', # Testing Full GAN Activation | |
| 'prompt': 'restore original face' | |
| } | |
| print(f"Testing with image: {TEST_IMAGE_PATH} using GAN method") | |
| try: | |
| response = requests.post(url, files=files, data=data) | |
| if response.status_code == 200: | |
| result = response.json() | |
| print("SUCCESS: Endpoint returned 200 OK") | |
| print(f"Output URL: {result.get('output_url')}") | |
| print(f"Method: {result.get('method')}") | |
| print(f"Is Morphed: {result.get('is_morphed')}") | |
| print(f"Detection Confidence: {result.get('detection_confidence')}") | |
| return True | |
| # Verify output URL exists (optional, but good check) | |
| # result['output_url'] is relative like /static/... | |
| # We can try to HEAD request it | |
| # But the logic seems sound. | |
| else: | |
| print(f"FAILURE: Status Code {response.status_code}") | |
| print(response.text) | |
| sys.exit(1) | |
| except Exception as e: | |
| print(f"EXCEPTION: {e}") | |
| sys.exit(1) | |
| if __name__ == "__main__": | |
| test_demorph() | |