Skip to content

WIP: Add data-access plugin implementation #41

WIP: Add data-access plugin implementation

WIP: Add data-access plugin implementation #41

Workflow file for this run

name: Python Test
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
test:
name: Python Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# Check if python files changed
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
python:
- 'python/**'
# Run tests only if python files changed
- name: Set up Python
if: steps.filter.outputs.python == 'true'
uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: 'pip'
- name: Install dependencies
if: steps.filter.outputs.python == 'true'
run: |
python -m pip install --upgrade pip
pip install pytest pytest-asyncio
# Install SDK and its dependencies
cd python/src/radius_ai_agent_sdk
pip install -e .
# Install EVM wallet
cd ../wallets/evm
pip install -e .
# Install Web3 wallet
cd ../web3
pip install -e .
# Install plugins
cd ../../plugins/erc20
pip install -e .
cd ../jsonrpc
pip install -e .
cd ../uniswap
pip install -e .
# Install adapter
cd ../../adapters/langchain
pip install -e .
- name: Run SDK tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/radius_ai_agent_sdk
run: pytest tests/
- name: Run ERC20 plugin tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/plugins/erc20
run: pytest tests/
- name: Run JSONRPC plugin tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/plugins/jsonrpc
run: pytest tests/
- name: Run Langchain adapter tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/adapters/langchain
run: pytest radius_adapters/langchain/__tests__/
- name: Run Uniswap plugin tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/plugins/uniswap
run: pytest tests/
- name: Run EVM wallet tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/wallets/evm
run: pytest tests/
- name: Run Web3 wallet tests
if: steps.filter.outputs.python == 'true'
working-directory: python/src/wallets/web3
run: pytest tests/
# Skip message (not displayed as a separate job)
- name: Skip tests
if: steps.filter.outputs.python != 'true'
run: echo "No Python changes detected. Skipping tests."