From 27510ebf2c601dfe3c1437b7e6c494cf73eff5fc Mon Sep 17 00:00:00 2001 From: aitbc1 Date: Fri, 27 Mar 2026 23:55:17 +0100 Subject: [PATCH] fix: replace wallet API heredoc with echo commands in api-endpoint-tests.yml MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit API ENDPOINT TESTS YAML FIX: Continue fixing YAML syntax errors Issues Fixed: ❌ Additional heredoc causing YAML parsing issues ❌ Wallet API test script creation failing ❌ Multi-line Python content being parsed as YAML Root Cause: - Remaining heredoc syntax in wallet API section - YAML parser still failing on multi-line content - Need to convert all heredocs to echo commands Solution Applied: ✅ Replaced wallet API heredoc with echo commands ✅ Line-by-line Python script creation for wallet tests ✅ Proper YAML syntax for wallet API section ✅ Maintained complete wallet API functionality Implementation Changes: - Removed wallet API heredoc syntax completely - Used echo commands for each Python line - Proper shell escaping for quotes and strings - Line-by-line file construction Generated Content: - Complete wallet API test script - Wallet health check functions - Wallet endpoint testing logic - Error handling and validation Impact: - YAML file now validates for wallet section - Wallet API test creation works properly - Progress toward complete YAML syntax validation - Need to fix remaining 2 heredocs for complete solution This continues the fix - 2 more heredocs (blockchain RPC and performance) need to be addressed for complete YAML syntax validation. --- .gitea/workflows/api-endpoint-tests.yml | 84 ++++++++++++------------- 1 file changed, 41 insertions(+), 43 deletions(-) diff --git a/.gitea/workflows/api-endpoint-tests.yml b/.gitea/workflows/api-endpoint-tests.yml index d79aad55..4ebafb8a 100644 --- a/.gitea/workflows/api-endpoint-tests.yml +++ b/.gitea/workflows/api-endpoint-tests.yml @@ -282,49 +282,47 @@ jobs: echo "🧪 Testing Wallet API endpoints..." # Create wallet API test - cat > test_wallet_api.py << 'EOF' -import requests -import json - -def test_wallet_health(): - try: - response = requests.get('http://localhost:8002/', timeout=5) - print(f"✅ Wallet health check: {response.status_code}") - return response.status_code == 200 - except Exception as e: - print(f"❌ Wallet health error: {e}") - return False - -def test_wallet_endpoints(): - endpoints = [ - 'http://localhost:8002/', - 'http://localhost:8002/health', - 'http://localhost:8002/wallets' - ] - - results = [] - for endpoint in endpoints: - try: - response = requests.get(endpoint, timeout=5) - print(f"✅ {endpoint}: {response.status_code}") - results.append(response.status_code == 200) - except Exception as e: - print(f"❌ {endpoint}: {e}") - results.append(False) - - return all(results) - -if __name__ == "__main__": - print("🧪 Testing Wallet API...") - - health_ok = test_wallet_health() - endpoints_ok = test_wallet_endpoints() - - if health_ok and endpoints_ok: - print("✅ Wallet API tests passed") - else: - print("❌ Wallet API tests failed") -EOF + echo 'import requests' > test_wallet_api.py + echo 'import json' >> test_wallet_api.py + echo '' >> test_wallet_api.py + echo 'def test_wallet_health():' >> test_wallet_api.py + echo ' try:' >> test_wallet_api.py + echo ' response = requests.get('"'"'http://localhost:8002/'"'"', timeout=5)' >> test_wallet_api.py + echo ' print(f"✅ Wallet health check: {response.status_code}")' >> test_wallet_api.py + echo ' return response.status_code == 200' >> test_wallet_api.py + echo ' except Exception as e:' >> test_wallet_api.py + echo ' print(f"❌ Wallet health error: {e}")' >> test_wallet_api.py + echo ' return False' >> test_wallet_api.py + echo '' >> test_wallet_api.py + echo 'def test_wallet_endpoints():' >> test_wallet_api.py + echo ' endpoints = [' >> test_wallet_api.py + echo ' '"'"'http://localhost:8002/'"'"',' >> test_wallet_api.py + echo ' '"'"'http://localhost:8002/health'"'"',' >> test_wallet_api.py + echo ' '"'"'http://localhost:8002/wallets'"'"'' >> test_wallet_api.py + echo ' ]' >> test_wallet_api.py + echo ' ' >> test_wallet_api.py + echo ' results = []' >> test_wallet_api.py + echo ' for endpoint in endpoints:' >> test_wallet_api.py + echo ' try:' >> test_wallet_api.py + echo ' response = requests.get(endpoint, timeout=5)' >> test_wallet_api.py + echo ' print(f"✅ {endpoint}: {response.status_code}")' >> test_wallet_api.py + echo ' results.append(response.status_code == 200)' >> test_wallet_api.py + echo ' except Exception as e:' >> test_wallet_api.py + echo ' print(f"❌ {endpoint}: {e}")' >> test_wallet_api.py + echo ' results.append(False)' >> test_wallet_api.py + echo ' ' >> test_wallet_api.py + echo ' return all(results)' >> test_wallet_api.py + echo '' >> test_wallet_api.py + echo 'if __name__ == "__main__":' >> test_wallet_api.py + echo ' print("🧪 Testing Wallet API...")' >> test_wallet_api.py + echo ' ' >> test_wallet_api.py + echo ' health_ok = test_wallet_health()' >> test_wallet_api.py + echo ' endpoints_ok = test_wallet_endpoints()' >> test_wallet_api.py + echo ' ' >> test_wallet_api.py + echo ' if health_ok and endpoints_ok:' >> test_wallet_api.py + echo ' print("✅ Wallet API tests passed")' >> test_wallet_api.py + echo ' else:' >> test_wallet_api.py + echo ' print("❌ Wallet API tests failed")' >> test_wallet_api.py python test_wallet_api.py