- Update tabulate from 0.9.0 to 0.10.0 (PR #34) - Update black from 24.3.0 to 26.3.1 (PR #37) - Update bandit from 1.7.5 to 1.9.4 (PR #31) - security update - Update types-requests from 2.31.0 to 2.32.4.20260107 (PR #35) Resolves 4 Dependabot PRs for improved security and development tools. These updates will automatically close the corresponding PRs when pushed.
182 lines
4.6 KiB
TOML
182 lines
4.6 KiB
TOML
[tool.pytest.ini_options]
|
|
# Test discovery
|
|
python_files = ["test_*.py", "*_test.py"]
|
|
python_classes = ["Test*"]
|
|
python_functions = ["test_*"]
|
|
|
|
# Cache directory - prevent root level cache
|
|
cache_dir = "dev/cache/.pytest_cache"
|
|
|
|
# Test paths to run - include all test directories across the project
|
|
testpaths = [
|
|
"tests",
|
|
"apps/blockchain-node/tests",
|
|
"apps/coordinator-api/tests",
|
|
"apps/explorer-web/tests",
|
|
"apps/pool-hub/tests",
|
|
"apps/wallet-daemon/tests",
|
|
"apps/zk-circuits/test",
|
|
"cli/tests",
|
|
"contracts/test",
|
|
"packages/py/aitbc-crypto/tests",
|
|
"packages/py/aitbc-sdk/tests",
|
|
"packages/solidity/aitbc-token/test",
|
|
"scripts/test"
|
|
]
|
|
|
|
# Python path for imports
|
|
pythonpath = [
|
|
".",
|
|
"packages/py/aitbc-crypto/src",
|
|
"packages/py/aitbc-crypto/tests",
|
|
"packages/py/aitbc-sdk/src",
|
|
"packages/py/aitbc-sdk/tests",
|
|
"apps/coordinator-api/src",
|
|
"apps/coordinator-api/tests",
|
|
"apps/wallet-daemon/src",
|
|
"apps/wallet-daemon/tests",
|
|
"apps/blockchain-node/src",
|
|
"apps/blockchain-node/tests",
|
|
"apps/pool-hub/src",
|
|
"apps/pool-hub/tests",
|
|
"apps/explorer-web/src",
|
|
"apps/explorer-web/tests",
|
|
"cli",
|
|
"cli/tests"
|
|
]
|
|
|
|
# Additional options for local testing
|
|
addopts = [
|
|
"--verbose",
|
|
"--tb=short",
|
|
"--strict-markers",
|
|
"--disable-warnings",
|
|
"-ra"
|
|
]
|
|
|
|
# Custom markers
|
|
markers = [
|
|
"unit: Unit tests (fast, isolated)",
|
|
"integration: Integration tests (may require external services)",
|
|
"slow: Slow running tests",
|
|
"cli: CLI command tests",
|
|
"api: API endpoint tests",
|
|
"blockchain: Blockchain-related tests",
|
|
"crypto: Cryptography tests",
|
|
"contracts: Smart contract tests",
|
|
"e2e: End-to-end tests (full system)",
|
|
"performance: Performance tests (measure speed/memory)",
|
|
"security: Security tests (vulnerability scanning)",
|
|
"gpu: Tests requiring GPU resources",
|
|
"confidential: Tests for confidential transactions",
|
|
"multitenant: Multi-tenancy specific tests"
|
|
]
|
|
|
|
# Environment variables for tests
|
|
env = [
|
|
"AUDIT_LOG_DIR=/tmp/aitbc-audit",
|
|
"DATABASE_URL=sqlite:///./test_coordinator.db",
|
|
"TEST_MODE=true",
|
|
"SQLITE_DATABASE=sqlite:///./test_coordinator.db"
|
|
]
|
|
|
|
# Warnings
|
|
filterwarnings = [
|
|
"ignore::UserWarning",
|
|
"ignore::DeprecationWarning",
|
|
"ignore::PendingDeprecationWarning",
|
|
"ignore::pytest.PytestUnknownMarkWarning",
|
|
"ignore::pydantic.PydanticDeprecatedSince20",
|
|
"ignore::sqlalchemy.exc.SADeprecationWarning"
|
|
]
|
|
|
|
# Asyncio configuration
|
|
asyncio_default_fixture_loop_scope = "function"
|
|
|
|
# Import mode
|
|
import_mode = "append"
|
|
|
|
[project]
|
|
name = "aitbc-cli"
|
|
version = "0.1.0"
|
|
description = "AITBC Command Line Interface Tools"
|
|
authors = [
|
|
{name = "AITBC Team", email = "team@aitbc.net"}
|
|
]
|
|
readme = "cli/README.md"
|
|
license = "MIT"
|
|
requires-python = ">=3.13"
|
|
dependencies = [
|
|
"click==8.3.1",
|
|
"httpx==0.28.1",
|
|
"pydantic==2.12.5",
|
|
"pyyaml==6.0.3",
|
|
"rich==13.7.0",
|
|
"keyring==25.7.0",
|
|
"cryptography==46.0.5",
|
|
"click-completion==0.5.2",
|
|
"tabulate==0.10.0",
|
|
"colorama==0.4.6",
|
|
"python-dotenv==1.0.0",
|
|
"asyncpg==0.31.0",
|
|
# Dependencies for service module imports (coordinator-api services)
|
|
"numpy>=1.26.0",
|
|
"pandas>=2.0.0",
|
|
"aiohttp>=3.9.0",
|
|
"fastapi>=0.111.0",
|
|
"uvicorn[standard]>=0.30.0"
|
|
]
|
|
classifiers = [
|
|
"Development Status :: 4 - Beta",
|
|
"Intended Audience :: Developers",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3.13",
|
|
"Operating System :: OS Independent",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
"Topic :: System :: Distributed Computing",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
dev = [
|
|
"pytest==9.0.2",
|
|
"pytest-asyncio==0.21.1",
|
|
"pytest-cov==7.0.0",
|
|
"pytest-mock==3.15.1",
|
|
"black==26.3.1",
|
|
"isort==8.0.1",
|
|
"ruff==0.15.5",
|
|
"mypy==1.8.0",
|
|
"bandit==1.9.4",
|
|
"types-requests==2.32.4.20260107",
|
|
"types-setuptools==69.0.0",
|
|
"types-PyYAML==6.0.12",
|
|
"sqlalchemy[mypy]==2.0.25"
|
|
]
|
|
|
|
[project.scripts]
|
|
aitbc = "aitbc_cli.main:cli"
|
|
|
|
[project.urls]
|
|
Homepage = "https://aitbc.net"
|
|
Repository = "https://github.com/aitbc/aitbc"
|
|
Documentation = "https://docs.aitbc.net"
|
|
|
|
[build-system]
|
|
requires = ["setuptools>=61.0", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["cli", "apps/coordinator-api"]
|
|
include = ["aitbc_cli*", "aitbc*"]
|
|
|
|
[tool.setuptools.package-dir]
|
|
"aitbc_cli" = "cli/aitbc_cli"
|
|
"aitbc" = "apps/coordinator-api/aitbc"
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"mypy (>=1.19.1,<2.0.0)"
|
|
]
|