#!/usr/bin/env python3 """ Simple test to verify the optimized asset endpoints work correctly. """ import requests import json def test_asset_endpoints(): BASE_URL = 'http://localhost:8000' # Login login_response = requests.post(f'{BASE_URL}/auth/login', json={'email': 'admin@vfx.com', 'password': 'admin123'}) if login_response.status_code != 200: print("❌ Login failed") return token = login_response.json()['access_token'] headers = {'Authorization': f'Bearer {token}'} # Test list assets print('Testing list_assets...') response = requests.get(f'{BASE_URL}/assets/?project_id=2', headers=headers) print(f'Status: {response.status_code}') if response.status_code == 200: assets = response.json() print(f'Assets returned: {len(assets)}') if assets: asset = assets[0] print(f'Sample asset has task_status: {"task_status" in asset}') print(f'Sample asset has task_details: {"task_details" in asset}') print(f'Task count: {asset.get("task_count", 0)}') # Test get single asset asset_id = asset['id'] print(f'\nTesting get_asset({asset_id})...') response = requests.get(f'{BASE_URL}/assets/{asset_id}', headers=headers) print(f'Status: {response.status_code}') if response.status_code == 200: single_asset = response.json() print(f'Asset has task_count: {"task_count" in single_asset}') print(f'Task count: {single_asset.get("task_count", 0)}') print('✅ All tests passed!') else: print('❌ get_asset failed') else: print('No assets found') else: print('❌ list_assets failed') if __name__ == "__main__": test_asset_endpoints()