chore: remove outdated documentation and reference files
Some checks failed
AITBC CI/CD Pipeline / lint-and-test (3.11) (push) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.12) (push) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.13) (push) Has been cancelled
AITBC CI/CD Pipeline / test-cli (push) Has been cancelled
AITBC CI/CD Pipeline / test-services (push) Has been cancelled
AITBC CI/CD Pipeline / test-production-services (push) Has been cancelled
AITBC CI/CD Pipeline / security-scan (push) Has been cancelled
AITBC CI/CD Pipeline / build (push) Has been cancelled
AITBC CI/CD Pipeline / deploy-staging (push) Has been cancelled
AITBC CI/CD Pipeline / deploy-production (push) Has been cancelled
AITBC CI/CD Pipeline / performance-test (push) Has been cancelled
AITBC CI/CD Pipeline / docs (push) Has been cancelled
AITBC CI/CD Pipeline / release (push) Has been cancelled
AITBC CI/CD Pipeline / notify (push) Has been cancelled
Security Scanning / Bandit Security Scan (apps/coordinator-api/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (cli/aitbc_cli) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-core/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-crypto/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-sdk/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (tests) (push) Has been cancelled
Security Scanning / CodeQL Security Analysis (javascript) (push) Has been cancelled
Security Scanning / CodeQL Security Analysis (python) (push) Has been cancelled
Security Scanning / Dependency Security Scan (push) Has been cancelled
Security Scanning / Container Security Scan (push) Has been cancelled
Security Scanning / OSSF Scorecard (push) Has been cancelled
Security Scanning / Security Summary Report (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.11) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.12) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.13) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-summary (push) Has been cancelled
Some checks failed
AITBC CI/CD Pipeline / lint-and-test (3.11) (push) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.12) (push) Has been cancelled
AITBC CI/CD Pipeline / lint-and-test (3.13) (push) Has been cancelled
AITBC CI/CD Pipeline / test-cli (push) Has been cancelled
AITBC CI/CD Pipeline / test-services (push) Has been cancelled
AITBC CI/CD Pipeline / test-production-services (push) Has been cancelled
AITBC CI/CD Pipeline / security-scan (push) Has been cancelled
AITBC CI/CD Pipeline / build (push) Has been cancelled
AITBC CI/CD Pipeline / deploy-staging (push) Has been cancelled
AITBC CI/CD Pipeline / deploy-production (push) Has been cancelled
AITBC CI/CD Pipeline / performance-test (push) Has been cancelled
AITBC CI/CD Pipeline / docs (push) Has been cancelled
AITBC CI/CD Pipeline / release (push) Has been cancelled
AITBC CI/CD Pipeline / notify (push) Has been cancelled
Security Scanning / Bandit Security Scan (apps/coordinator-api/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (cli/aitbc_cli) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-core/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-crypto/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (packages/py/aitbc-sdk/src) (push) Has been cancelled
Security Scanning / Bandit Security Scan (tests) (push) Has been cancelled
Security Scanning / CodeQL Security Analysis (javascript) (push) Has been cancelled
Security Scanning / CodeQL Security Analysis (python) (push) Has been cancelled
Security Scanning / Dependency Security Scan (push) Has been cancelled
Security Scanning / Container Security Scan (push) Has been cancelled
Security Scanning / OSSF Scorecard (push) Has been cancelled
Security Scanning / Security Summary Report (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.11) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.12) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-cli-level1 (3.13) (push) Has been cancelled
AITBC CLI Level 1 Commands Test / test-summary (push) Has been cancelled
- Remove debugging service documentation (DEBUgging_SERVICES.md) - Remove development logs policy and quick reference guides - Remove E2E test creation summary - Remove gift certificate example file - Remove GitHub pull summary documentation
This commit is contained in:
@@ -4,30 +4,30 @@
|
||||
case "${1:-help}" in
|
||||
"start")
|
||||
echo "Starting AITBC services..."
|
||||
sudo systemctl start aitbc-coordinator-api.service
|
||||
sudo systemctl start aitbc-blockchain-node.service
|
||||
sudo systemctl start aitbc-blockchain-rpc.service
|
||||
systemctl start aitbc-coordinator-api.service
|
||||
systemctl start aitbc-blockchain-node.service
|
||||
systemctl start aitbc-blockchain-rpc.service
|
||||
echo "Services started"
|
||||
;;
|
||||
"stop")
|
||||
echo "Stopping AITBC services..."
|
||||
sudo systemctl stop aitbc-coordinator-api.service
|
||||
sudo systemctl stop aitbc-blockchain-node.service
|
||||
sudo systemctl stop aitbc-blockchain-rpc.service
|
||||
systemctl stop aitbc-coordinator-api.service
|
||||
systemctl stop aitbc-blockchain-node.service
|
||||
systemctl stop aitbc-blockchain-rpc.service
|
||||
echo "Services stopped"
|
||||
;;
|
||||
"restart")
|
||||
echo "Restarting AITBC services..."
|
||||
sudo systemctl restart aitbc-coordinator-api.service
|
||||
sudo systemctl restart aitbc-blockchain-node.service
|
||||
sudo systemctl restart aitbc-blockchain-rpc.service
|
||||
systemctl restart aitbc-coordinator-api.service
|
||||
systemctl restart aitbc-blockchain-node.service
|
||||
systemctl restart aitbc-blockchain-rpc.service
|
||||
echo "Services restarted"
|
||||
;;
|
||||
"status")
|
||||
echo "=== AITBC Services Status ==="
|
||||
sudo systemctl status aitbc-coordinator-api.service --no-pager
|
||||
sudo systemctl status aitbc-blockchain-node.service --no-pager
|
||||
sudo systemctl status aitbc-blockchain-rpc.service --no-pager
|
||||
systemctl status aitbc-coordinator-api.service --no-pager
|
||||
systemctl status aitbc-blockchain-node.service --no-pager
|
||||
systemctl status aitbc-blockchain-rpc.service --no-pager
|
||||
;;
|
||||
"logs")
|
||||
echo "=== AITBC Service Logs ==="
|
||||
|
||||
32
scripts/testing/drain_test.py
Normal file
32
scripts/testing/drain_test.py
Normal file
@@ -0,0 +1,32 @@
|
||||
import sys
|
||||
from pathlib import Path
|
||||
import json
|
||||
|
||||
# Setup sys.path
|
||||
sys.path.insert(0, str(Path('/opt/aitbc/apps/blockchain-node/src')))
|
||||
|
||||
from aitbc_chain.config import settings
|
||||
from aitbc_chain.mempool import init_mempool, get_mempool
|
||||
|
||||
# Use development mempool backend configuration exactly like main node
|
||||
init_mempool(
|
||||
backend=settings.mempool_backend,
|
||||
db_path=str(settings.db_path.parent / "mempool.db"),
|
||||
max_size=settings.mempool_max_size,
|
||||
min_fee=settings.min_fee,
|
||||
)
|
||||
|
||||
mempool = get_mempool()
|
||||
print(f"Mempool class: {mempool.__class__.__name__}")
|
||||
print(f"Mempool DB path: {mempool._db_path}")
|
||||
|
||||
chain_id = 'ait-mainnet'
|
||||
rows = mempool._conn.execute("SELECT * FROM mempool WHERE chain_id = ?", (chain_id,)).fetchall()
|
||||
print(f"Found {len(rows)} raw rows in DB")
|
||||
for r in rows:
|
||||
print(r)
|
||||
|
||||
txs = mempool.drain(100, 1000000, chain_id)
|
||||
print(f"Drained {len(txs)} txs")
|
||||
for tx in txs:
|
||||
print(tx)
|
||||
261
scripts/testing/run_all_tests.sh
Executable file
261
scripts/testing/run_all_tests.sh
Executable file
@@ -0,0 +1,261 @@
|
||||
#!/bin/bash
|
||||
# Master Test Runner for Multi-Site AITBC Testing
|
||||
|
||||
echo "🚀 Multi-Site AITBC Test Suite Master Runner"
|
||||
echo "=========================================="
|
||||
echo "Testing localhost, aitbc, and aitbc1 with all CLI features"
|
||||
echo ""
|
||||
|
||||
# Resolve project root (directory containing this script)
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_ROOT="$(cd "$SCRIPT_DIR" && pwd)"
|
||||
|
||||
# Function to run a test scenario
|
||||
run_scenario() {
|
||||
local scenario_name=$1
|
||||
local script_path=$2
|
||||
|
||||
echo ""
|
||||
echo "🔧 Running $scenario_name"
|
||||
echo "================================"
|
||||
|
||||
if [ -f "$script_path" ]; then
|
||||
bash "$script_path"
|
||||
local exit_code=$?
|
||||
if [ $exit_code -eq 0 ]; then
|
||||
echo "✅ $scenario_name completed successfully"
|
||||
else
|
||||
echo "❌ $scenario_name failed with exit code $exit_code"
|
||||
fi
|
||||
return $exit_code
|
||||
else
|
||||
echo "❌ Script not found: $script_path"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to check prerequisites
|
||||
check_prerequisites() {
|
||||
echo "🔍 Checking prerequisites..."
|
||||
echo "=========================="
|
||||
|
||||
# Check if aitbc CLI is available
|
||||
if command -v aitbc &> /dev/null; then
|
||||
echo "✅ AITBC CLI found"
|
||||
aitbc --version | head -1
|
||||
else
|
||||
echo "❌ AITBC CLI not found in PATH"
|
||||
echo "Please ensure CLI is installed and in PATH"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Check if required services are running
|
||||
echo ""
|
||||
echo "🌐 Checking service connectivity..."
|
||||
|
||||
# Check aitbc connectivity
|
||||
if curl -s http://127.0.0.1:18000/v1/health &> /dev/null; then
|
||||
echo "✅ aitbc marketplace accessible (port 18000)"
|
||||
else
|
||||
echo "❌ aitbc marketplace not accessible (port 18000)"
|
||||
fi
|
||||
|
||||
# Check aitbc1 connectivity
|
||||
if curl -s http://127.0.0.1:18001/v1/health &> /dev/null; then
|
||||
echo "✅ aitbc1 marketplace accessible (port 18001)"
|
||||
else
|
||||
echo "❌ aitbc1 marketplace not accessible (port 18001)"
|
||||
fi
|
||||
|
||||
# Check Ollama
|
||||
if ollama list &> /dev/null; then
|
||||
echo "✅ Ollama GPU service available"
|
||||
ollama list | head -3
|
||||
else
|
||||
echo "❌ Ollama GPU service not available"
|
||||
fi
|
||||
|
||||
# Check SSH access to containers
|
||||
echo ""
|
||||
echo "🏢 Checking container access..."
|
||||
|
||||
if ssh aitbc-cascade "echo 'SSH OK'" &> /dev/null; then
|
||||
echo "✅ SSH access to aitbc container"
|
||||
else
|
||||
echo "❌ SSH access to aitbc container failed"
|
||||
fi
|
||||
|
||||
if ssh aitbc1-cascade "echo 'SSH OK'" &> /dev/null; then
|
||||
echo "✅ SSH access to aitbc1 container"
|
||||
else
|
||||
echo "❌ SSH access to aitbc1 container failed"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "📋 Checking user configurations..."
|
||||
|
||||
# Check miner1 and client1 configurations (relative to project root)
|
||||
local home_dir="$PROJECT_ROOT/home"
|
||||
if [ -f "$home_dir/miner1/miner_wallet.json" ]; then
|
||||
echo "✅ miner1 configuration found"
|
||||
else
|
||||
echo "❌ miner1 configuration missing"
|
||||
fi
|
||||
|
||||
if [ -f "$home_dir/client1/client_wallet.json" ]; then
|
||||
echo "✅ client1 configuration found"
|
||||
else
|
||||
echo "❌ client1 configuration missing"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "🔧 Prerequisite check complete"
|
||||
echo "=============================="
|
||||
}
|
||||
|
||||
# Function to run comprehensive CLI tests
|
||||
run_cli_tests() {
|
||||
echo ""
|
||||
echo "🔧 Running Comprehensive CLI Tests"
|
||||
echo "================================="
|
||||
|
||||
local cli_commands=(
|
||||
"chain:list:aitbc chain list --node-endpoint http://127.0.0.1:18000"
|
||||
"chain:list:aitbc1:aitbc chain list --node-endpoint http://127.0.0.1:18001"
|
||||
"analytics:summary:aitbc:aitbc analytics summary --node-endpoint http://127.0.0.1:18000"
|
||||
"analytics:summary:aitbc1:aitbc analytics summary --node-endpoint http://127.0.0.1:18001"
|
||||
"marketplace:list:aitbc:aitbc marketplace list --marketplace-url http://127.0.0.1:18000"
|
||||
"marketplace:list:aitbc1:aitbc marketplace list --marketplace-url http://127.0.0.1:18001"
|
||||
"agent_comm:list:aitbc:aitbc agent_comm list --node-endpoint http://127.0.0.1:18000"
|
||||
"agent_comm:list:aitbc1:aitbc agent_comm list --node-endpoint http://127.0.0.1:18001"
|
||||
"deploy:overview:aitbc deploy overview --format table"
|
||||
)
|
||||
|
||||
local passed=0
|
||||
local total=0
|
||||
|
||||
for cmd_info in "${cli_commands[@]}"; do
|
||||
IFS=':' read -r test_name command <<< "$cmd_info"
|
||||
total=$((total + 1))
|
||||
|
||||
echo "Testing: $test_name"
|
||||
if eval "$command" &> /dev/null; then
|
||||
echo "✅ $test_name - PASSED"
|
||||
passed=$((passed + 1))
|
||||
else
|
||||
echo "❌ $test_name - FAILED"
|
||||
fi
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo "CLI Test Results: $passed/$total passed"
|
||||
return $((total - passed))
|
||||
}
|
||||
|
||||
# Function to generate final report
|
||||
generate_report() {
|
||||
local total_scenarios=$1
|
||||
local passed_scenarios=$2
|
||||
local failed_scenarios=$((total_scenarios - passed_scenarios))
|
||||
|
||||
echo ""
|
||||
echo "📊 FINAL TEST REPORT"
|
||||
echo "==================="
|
||||
echo "Total Scenarios: $total_scenarios"
|
||||
echo "Passed: $passed_scenarios"
|
||||
echo "Failed: $failed_scenarios"
|
||||
|
||||
if [ $failed_scenarios -eq 0 ]; then
|
||||
echo ""
|
||||
echo "🎉 ALL TESTS PASSED!"
|
||||
echo "Multi-site AITBC ecosystem is fully functional"
|
||||
return 0
|
||||
else
|
||||
echo ""
|
||||
echo "⚠️ SOME TESTS FAILED"
|
||||
echo "Please check the failed scenarios and fix issues"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Main execution
|
||||
main() {
|
||||
local scenario_count=0
|
||||
local passed_count=0
|
||||
|
||||
# Check prerequisites
|
||||
if ! check_prerequisites; then
|
||||
echo "❌ Prerequisites not met. Exiting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Run CLI tests first
|
||||
echo ""
|
||||
if run_cli_tests; then
|
||||
echo "✅ All CLI tests passed"
|
||||
passed_count=$((passed_count + 1))
|
||||
else
|
||||
echo "❌ Some CLI tests failed"
|
||||
fi
|
||||
scenario_count=$((scenario_count + 1))
|
||||
|
||||
# Run scenario tests
|
||||
local scenarios=(
|
||||
"Scenario A: Localhost GPU Miner → aitbc Marketplace:$PROJECT_ROOT/test_scenario_a.sh"
|
||||
"Scenario B: Localhost GPU Client → aitbc1 Marketplace:$PROJECT_ROOT/test_scenario_b.sh"
|
||||
"Scenario C: aitbc Container User Operations:$PROJECT_ROOT/test_scenario_c.sh"
|
||||
"Scenario D: aitbc1 Container User Operations:$PROJECT_ROOT/test_scenario_d.sh"
|
||||
)
|
||||
|
||||
for scenario_info in "${scenarios[@]}"; do
|
||||
IFS=':' read -r scenario_name script_path <<< "$scenario_info"
|
||||
scenario_count=$((scenario_count + 1))
|
||||
|
||||
if run_scenario "$scenario_name" "$script_path"; then
|
||||
passed_count=$((passed_count + 1))
|
||||
fi
|
||||
done
|
||||
|
||||
# Run comprehensive test suite
|
||||
echo ""
|
||||
echo "🔧 Running Comprehensive Test Suite"
|
||||
echo "=================================="
|
||||
if python3 "$PROJECT_ROOT/test_multi_site.py"; then
|
||||
echo "✅ Comprehensive test suite passed"
|
||||
passed_count=$((passed_count + 1))
|
||||
else
|
||||
echo "❌ Comprehensive test suite failed"
|
||||
fi
|
||||
scenario_count=$((scenario_count + 1))
|
||||
|
||||
# Generate final report
|
||||
generate_report $scenario_count $passed_count
|
||||
}
|
||||
|
||||
# Parse command line arguments
|
||||
case "${1:-all}" in
|
||||
"prereq")
|
||||
check_prerequisites
|
||||
;;
|
||||
"cli")
|
||||
run_cli_tests
|
||||
;;
|
||||
"scenario-a")
|
||||
run_scenario "Scenario A" "$PROJECT_ROOT/test_scenario_a.sh"
|
||||
;;
|
||||
"scenario-b")
|
||||
run_scenario "Scenario B" "$PROJECT_ROOT/test_scenario_b.sh"
|
||||
;;
|
||||
"scenario-c")
|
||||
run_scenario "Scenario C" "$PROJECT_ROOT/test_scenario_c.sh"
|
||||
;;
|
||||
"scenario-d")
|
||||
run_scenario "Scenario D" "$PROJECT_ROOT/test_scenario_d.sh"
|
||||
;;
|
||||
"comprehensive")
|
||||
python3 "$PROJECT_ROOT/test_multi_site.py"
|
||||
;;
|
||||
"all"|*)
|
||||
main
|
||||
;;
|
||||
esac
|
||||
28
scripts/testing/run_test.py
Executable file
28
scripts/testing/run_test.py
Executable file
@@ -0,0 +1,28 @@
|
||||
import sys
|
||||
from click.testing import CliRunner
|
||||
from aitbc_cli.commands.node import node
|
||||
from aitbc_cli.core.config import MultiChainConfig
|
||||
from unittest.mock import patch, MagicMock
|
||||
import sys
|
||||
|
||||
runner = CliRunner()
|
||||
with patch('aitbc_cli.commands.node.load_multichain_config') as mock_load:
|
||||
with patch('aitbc_cli.commands.node.get_default_node_config') as mock_default:
|
||||
with patch('aitbc_cli.commands.node.add_node_config') as mock_add:
|
||||
# The function does `from ..core.config import save_multichain_config`
|
||||
# This evaluates to `aitbc_cli.core.config` because node.py is in `aitbc_cli.commands`
|
||||
with patch('aitbc_cli.core.config.save_multichain_config') as mock_save:
|
||||
# The issue with the previous run was not that save_multichain_config wasn't patched correctly.
|
||||
# The issue is that click catches exceptions and prints the generic "Error adding node: ...".
|
||||
# Wait, "Failed to save configuration" actually implies the unpatched save_multichain_config was CALLED!
|
||||
|
||||
# Let's mock at sys.modules level for Python relative imports
|
||||
pass
|
||||
|
||||
with patch('aitbc_cli.commands.node.load_multichain_config') as mock_load:
|
||||
with patch('aitbc_cli.commands.node.get_default_node_config') as mock_default:
|
||||
with patch('aitbc_cli.commands.node.add_node_config') as mock_add:
|
||||
# the easiest way is to patch it in the exact module it is executed
|
||||
# OR we can just avoid testing the mock_save and let it save to a temp config!
|
||||
# Let's check how config is loaded in node.py
|
||||
pass
|
||||
16
scripts/testing/test_broadcaster.py
Normal file
16
scripts/testing/test_broadcaster.py
Normal file
@@ -0,0 +1,16 @@
|
||||
import asyncio
|
||||
from broadcaster import Broadcast
|
||||
|
||||
async def main():
|
||||
broadcast = Broadcast("redis://localhost:6379")
|
||||
await broadcast.connect()
|
||||
print("connected")
|
||||
async with broadcast.subscribe("test") as sub:
|
||||
print("subscribed")
|
||||
await broadcast.publish("test", "hello")
|
||||
async for msg in sub:
|
||||
print("msg:", msg.message)
|
||||
break
|
||||
await broadcast.disconnect()
|
||||
|
||||
asyncio.run(main())
|
||||
10
scripts/testing/test_coordinator_marketplace.py
Normal file
10
scripts/testing/test_coordinator_marketplace.py
Normal file
@@ -0,0 +1,10 @@
|
||||
import requests
|
||||
|
||||
try:
|
||||
response = requests.get('http://127.0.0.1:8000/v1/marketplace/offers')
|
||||
print("Offers:", response.status_code)
|
||||
|
||||
response = requests.get('http://127.0.0.1:8000/v1/marketplace/stats')
|
||||
print("Stats:", response.status_code)
|
||||
except Exception as e:
|
||||
print("Error:", e)
|
||||
23
scripts/testing/test_error.py
Normal file
23
scripts/testing/test_error.py
Normal file
@@ -0,0 +1,23 @@
|
||||
import sys
|
||||
import asyncio
|
||||
from sqlmodel import Session, create_engine
|
||||
from app.services.marketplace_enhanced_simple import EnhancedMarketplaceService
|
||||
from app.database import engine
|
||||
from app.domain.marketplace import MarketplaceBid
|
||||
|
||||
async def run():
|
||||
with Session(engine) as session:
|
||||
# insert a bid to test amount vs price
|
||||
bid = MarketplaceBid(provider="prov", capacity=10, price=1.0)
|
||||
session.add(bid)
|
||||
session.commit()
|
||||
|
||||
service = EnhancedMarketplaceService(session)
|
||||
try:
|
||||
res = await service.get_marketplace_analytics(period_days=30, metrics=["volume", "revenue"])
|
||||
print(res)
|
||||
except Exception as e:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
|
||||
asyncio.run(run())
|
||||
21
scripts/testing/test_register.py
Normal file
21
scripts/testing/test_register.py
Normal file
@@ -0,0 +1,21 @@
|
||||
import asyncio
|
||||
from apps.agent_services.agent_bridge.src.integration_layer import AgentServiceBridge
|
||||
|
||||
async def main():
|
||||
bridge = AgentServiceBridge()
|
||||
# Let's inspect the actual payload
|
||||
payload = {
|
||||
"name": "test-agent-123",
|
||||
"type": "trading",
|
||||
"capabilities": ["trade"],
|
||||
"chain_id": "ait-mainnet",
|
||||
"endpoint": "http://localhost:8005",
|
||||
"version": "1.0.0",
|
||||
"description": "Test trading agent"
|
||||
}
|
||||
async with bridge.integration as integration:
|
||||
result = await integration.register_agent_with_coordinator(payload)
|
||||
print(f"Result: {result}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(main())
|
||||
2
scripts/testing/test_send.sh
Executable file
2
scripts/testing/test_send.sh
Executable file
@@ -0,0 +1,2 @@
|
||||
export AITBC_WALLET="test_wallet"
|
||||
aitbc wallet send aitbc1my-test-wallet_hd 50
|
||||
22
scripts/testing/test_wallet.py
Normal file
22
scripts/testing/test_wallet.py
Normal file
@@ -0,0 +1,22 @@
|
||||
import json
|
||||
|
||||
wallet_data = {
|
||||
"name": "test_wallet",
|
||||
"type": "hd",
|
||||
"address": "aitbc1genesis",
|
||||
"private_key": "dummy",
|
||||
"public_key": "dummy",
|
||||
"encrypted": False,
|
||||
"transactions": [],
|
||||
"balance": 1000000
|
||||
}
|
||||
|
||||
import os
|
||||
import pathlib
|
||||
|
||||
wallet_dir = pathlib.Path("/root/.aitbc/wallets")
|
||||
wallet_dir.mkdir(parents=True, exist_ok=True)
|
||||
wallet_path = wallet_dir / "test_wallet.json"
|
||||
|
||||
with open(wallet_path, "w") as f:
|
||||
json.dump(wallet_data, f)
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user