Some checks failed
Documentation Validation / validate-docs (push) Has been cancelled
API Endpoint Tests / test-api-endpoints (push) Successful in 40s
CLI Tests / test-cli (push) Successful in 1m3s
Integration Tests / test-service-integration (push) Successful in 1m19s
Package Tests / test-python-packages (map[name:aitbc-agent-sdk path:packages/py/aitbc-agent-sdk]) (push) Successful in 1m1s
Package Tests / test-python-packages (map[name:aitbc-core path:packages/py/aitbc-core]) (push) Successful in 24s
Package Tests / test-python-packages (map[name:aitbc-crypto path:packages/py/aitbc-crypto]) (push) Successful in 26s
Package Tests / test-javascript-packages (map[name:aitbc-sdk-js path:packages/js/aitbc-sdk]) (push) Successful in 15s
Package Tests / test-python-packages (map[name:aitbc-sdk path:packages/py/aitbc-sdk]) (push) Successful in 27s
Package Tests / test-javascript-packages (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 1m1s
Python Tests / test-python (push) Successful in 1m28s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 47s
Security Scanning / security-scan (push) Successful in 1m23s
Smart Contract Tests / test-solidity (map[name:zk-circuits path:apps/zk-circuits]) (push) Successful in 51s
Systemd Sync / sync-systemd (push) Successful in 6s
Smart Contract Tests / lint-solidity (push) Successful in 1m4s
🔧 Workflow Enhancements: • Update CLI tests to use dedicated test runner with virtual environment • Add locust dependency to integration and python test workflows • Install Python packages in development mode for proper import testing • Add package import verification in python-tests workflow 🛠️ Package Testing Improvements: • Add Hardhat dependency installation for aitbc-token package • Add
103 lines
3.0 KiB
Python
Executable File
103 lines
3.0 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""Simple CLI test runner that uses the virtual environment."""
|
|
|
|
import subprocess
|
|
import sys
|
|
import os
|
|
from pathlib import Path
|
|
|
|
def run_cli_test():
|
|
"""Run basic CLI functionality tests."""
|
|
print("🧪 Running CLI Tests with Virtual Environment...")
|
|
|
|
# Set up environment
|
|
cli_dir = Path(__file__).parent.parent
|
|
venv_python = "/opt/aitbc/venv/bin/python"
|
|
|
|
# Test 1: CLI help command
|
|
print("\n1. Testing CLI help command...")
|
|
try:
|
|
result = subprocess.run(
|
|
[venv_python, "aitbc_cli.py", "--help"],
|
|
capture_output=True,
|
|
text=True,
|
|
timeout=10,
|
|
cwd=str(cli_dir)
|
|
)
|
|
|
|
if result.returncode == 0 and "AITBC CLI" in result.stdout:
|
|
print("✅ CLI help command working")
|
|
else:
|
|
print(f"❌ CLI help command failed: {result.stderr}")
|
|
return False
|
|
except Exception as e:
|
|
print(f"❌ CLI help command error: {e}")
|
|
return False
|
|
|
|
# Test 2: CLI list command
|
|
print("\n2. Testing CLI list command...")
|
|
try:
|
|
result = subprocess.run(
|
|
[venv_python, "aitbc_cli.py", "list"],
|
|
capture_output=True,
|
|
text=True,
|
|
timeout=10,
|
|
cwd=str(cli_dir)
|
|
)
|
|
|
|
if result.returncode == 0:
|
|
print("✅ CLI list command working")
|
|
else:
|
|
print(f"❌ CLI list command failed: {result.stderr}")
|
|
return False
|
|
except Exception as e:
|
|
print(f"❌ CLI list command error: {e}")
|
|
return False
|
|
|
|
# Test 3: CLI blockchain command
|
|
print("\n3. Testing CLI blockchain command...")
|
|
try:
|
|
result = subprocess.run(
|
|
[venv_python, "aitbc_cli.py", "chain"],
|
|
capture_output=True,
|
|
text=True,
|
|
timeout=10,
|
|
cwd=str(cli_dir)
|
|
)
|
|
|
|
if result.returncode == 0:
|
|
print("✅ CLI blockchain command working")
|
|
else:
|
|
print(f"❌ CLI blockchain command failed: {result.stderr}")
|
|
return False
|
|
except Exception as e:
|
|
print(f"❌ CLI blockchain command error: {e}")
|
|
return False
|
|
|
|
# Test 4: CLI invalid command handling
|
|
print("\n4. Testing CLI invalid command handling...")
|
|
try:
|
|
result = subprocess.run(
|
|
[venv_python, "aitbc_cli.py", "invalid-command"],
|
|
capture_output=True,
|
|
text=True,
|
|
timeout=10,
|
|
cwd=str(cli_dir)
|
|
)
|
|
|
|
if result.returncode != 0:
|
|
print("✅ CLI invalid command handling working")
|
|
else:
|
|
print("❌ CLI invalid command should have failed")
|
|
return False
|
|
except Exception as e:
|
|
print(f"❌ CLI invalid command error: {e}")
|
|
return False
|
|
|
|
print("\n✅ All CLI tests passed!")
|
|
return True
|
|
|
|
if __name__ == "__main__":
|
|
success = run_cli_test()
|
|
sys.exit(0 if success else 1)
|