Files
aitbc/packages/py/aitbc-agent-sdk/tests/test_agent_sdk.py
aitbc1 326a10e51d
Some checks failed
package-tests / test-python-packages (map[name:aitbc-agent-sdk path:packages/py/aitbc-agent-sdk python_version:3.13]) (push) Successful in 35s
package-tests / test-python-packages (map[name:aitbc-cli path:. python_version:3.13]) (push) Successful in 2s
package-tests / test-python-packages (map[name:aitbc-core path:packages/py/aitbc-core python_version:3.13]) (push) Successful in 3s
package-tests / test-python-packages (map[name:aitbc-crypto path:packages/py/aitbc-crypto python_version:3.13]) (push) Successful in 4s
package-tests / test-python-packages (map[name:aitbc-sdk path:packages/py/aitbc-sdk python_version:3.13]) (push) Successful in 2s
package-tests / test-javascript-packages (map[name:aitbc-sdk node_version:24 path:packages/js/aitbc-sdk]) (push) Failing after 1s
python-tests / test (push) Failing after 1s
package-tests / cross-language-compatibility (push) Has been skipped
package-tests / package-integration-tests (push) Has been skipped
python-tests / test-specific (push) Has been skipped
security-scanning / audit (push) Failing after 1s
integration-tests / test-service-integration (push) Successful in 1m24s
fix: restructure aitbc-agent-sdk package for proper testing
- Add pyproject.toml with modern Python packaging
- Create src/ directory structure for standard layout
- Add comprehensive test suite (test_agent_sdk.py)
- Fix package discovery for linting tools
- Resolve CI package test failures
- Ensure proper import paths and module structure

Changes:
- packages/py/aitbc-agent-sdk/pyproject.toml (new)
- packages/py/aitbc-agent-sdk/src/aitbc_agent/ (moved)
- packages/py/aitbc-agent-sdk/tests/ (new)
- Update setuptools configuration for src layout
2026-03-29 12:07:21 +02:00

78 lines
2.5 KiB
Python

"""Test suite for AITBC Agent SDK"""
import pytest
from aitbc_agent.agent import AITBCAgent
from aitbc_agent.compute_provider import ComputeProvider
from aitbc_agent.swarm_coordinator import SwarmCoordinator
class TestAITBCAgent:
"""Test AITBC Agent functionality"""
def test_agent_initialization(self):
"""Test agent can be initialized"""
agent = AITBCAgent(agent_id="test-agent")
assert agent.agent_id == "test-agent"
assert agent.status == "initialized"
def test_agent_config_validation(self):
"""Test agent configuration validation"""
config = {
"agent_id": "test-agent",
"compute_type": "gpu",
"capabilities": ["inference", "training"]
}
agent = AITBCAgent(**config)
assert agent.compute_type == "gpu"
assert "inference" in agent.capabilities
class TestComputeProvider:
"""Test Compute Provider functionality"""
def test_provider_registration(self):
"""Test provider can register with network"""
provider = ComputeProvider(
provider_id="test-provider",
gpu_count=4,
memory_gb=32
)
assert provider.provider_id == "test-provider"
assert provider.gpu_count == 4
assert provider.memory_gb == 32
def test_resource_availability(self):
"""Test resource availability reporting"""
provider = ComputeProvider(
provider_id="test-provider",
gpu_count=2,
memory_gb=16
)
resources = provider.get_available_resources()
assert resources["gpu_count"] == 2
assert resources["memory_gb"] == 16
class TestSwarmCoordinator:
"""Test Swarm Coordinator functionality"""
def test_coordinator_initialization(self):
"""Test coordinator initialization"""
coordinator = SwarmCoordinator(coordinator_id="test-coordinator")
assert coordinator.coordinator_id == "test-coordinator"
assert len(coordinator.agents) == 0
def test_agent_registration(self):
"""Test agent registration with coordinator"""
coordinator = SwarmCoordinator(coordinator_id="test-coordinator")
agent = AITBCAgent(agent_id="test-agent")
success = coordinator.register_agent(agent)
assert success is True
assert len(coordinator.agents) == 1
assert "test-agent" in coordinator.agents
if __name__ == "__main__":
pytest.main([__file__])