mirror of
https://github.com/aljazceru/nutshell.git
synced 2025-12-24 12:04:21 +01:00
Tests: split wallet test from mint test pipeline (#748)
* split wallet test from mint test pipeline * regtest mint and wallet * fix * fix * move mint tests * real invoice in regtest mpp
This commit is contained in:
20
.github/workflows/ci.yml
vendored
20
.github/workflows/ci.yml
vendored
@@ -57,8 +57,24 @@ jobs:
|
||||
poetry-version: ${{ matrix.poetry-version }}
|
||||
mint-database: ${{ matrix.mint-database }}
|
||||
|
||||
regtest:
|
||||
uses: ./.github/workflows/regtest.yml
|
||||
regtest-mint:
|
||||
uses: ./.github/workflows/regtest-mint.yml
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version: ["3.10"]
|
||||
poetry-version: ["1.8.5"]
|
||||
backend-wallet-class:
|
||||
["LndRPCWallet", "LndRestWallet", "CLNRestWallet", "CoreLightningRestWallet", "LNbitsWallet"]
|
||||
mint-database: ["./test_data/test_mint", "postgres://cashu:cashu@localhost:5432/cashu"]
|
||||
# mint-database: ["./test_data/test_mint"]
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
backend-wallet-class: ${{ matrix.backend-wallet-class }}
|
||||
mint-database: ${{ matrix.mint-database }}
|
||||
|
||||
regtest-wallet:
|
||||
uses: ./.github/workflows/regtest-wallet.yml
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
name: regtest
|
||||
name: regtest-mint
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
@@ -20,7 +20,7 @@ on:
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
regtest:
|
||||
regtest-mint:
|
||||
runs-on: ${{ inputs.os-version }}
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
@@ -73,7 +73,7 @@ jobs:
|
||||
MINT_CLNREST_CERT: ./regtest/data/clightning-2/regtest/ca.pem
|
||||
run: |
|
||||
sudo chmod -R 777 .
|
||||
make test
|
||||
make test-mint
|
||||
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v3
|
||||
79
.github/workflows/regtest-wallet.yml
vendored
Normal file
79
.github/workflows/regtest-wallet.yml
vendored
Normal file
@@ -0,0 +1,79 @@
|
||||
name: regtest-wallet
|
||||
|
||||
on:
|
||||
workflow_call:
|
||||
inputs:
|
||||
python-version:
|
||||
default: "3.10.4"
|
||||
type: string
|
||||
poetry-version:
|
||||
default: "1.5.1"
|
||||
type: string
|
||||
os-version:
|
||||
default: "ubuntu-latest"
|
||||
type: string
|
||||
mint-database:
|
||||
default: ""
|
||||
type: string
|
||||
backend-wallet-class:
|
||||
required: true
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
regtest-wallet:
|
||||
runs-on: ${{ inputs.os-version }}
|
||||
timeout-minutes: 10
|
||||
steps:
|
||||
- name: Start PostgreSQL service
|
||||
if: contains(inputs.mint-database, 'postgres')
|
||||
run: |
|
||||
docker run -d --name postgres -e POSTGRES_USER=cashu -e POSTGRES_PASSWORD=cashu -e POSTGRES_DB=cashu -p 5432:5432 postgres:latest
|
||||
until docker exec postgres pg_isready; do sleep 1; done
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- uses: ./.github/actions/prepare
|
||||
with:
|
||||
python-version: ${{ inputs.python-version }}
|
||||
poetry-version: ${{ inputs.poetry-version }}
|
||||
|
||||
- name: Setup Regtest
|
||||
run: |
|
||||
git clone https://github.com/callebtc/cashu-regtest-enviroment.git regtest
|
||||
cd regtest
|
||||
chmod -R 777 .
|
||||
bash ./start.sh
|
||||
|
||||
- name: Run Tests
|
||||
env:
|
||||
WALLET_NAME: test_wallet
|
||||
MINT_HOST: localhost
|
||||
MINT_PORT: 3337
|
||||
MINT_TEST_DATABASE: ${{ inputs.mint-database }}
|
||||
TOR: false
|
||||
MINT_BACKEND_BOLT11_SAT: ${{ inputs.backend-wallet-class }}
|
||||
# LNbits wallet
|
||||
MINT_LNBITS_ENDPOINT: http://localhost:5001
|
||||
MINT_LNBITS_KEY: d08a3313322a4514af75d488bcc27eee
|
||||
# LndRestWallet
|
||||
MINT_LND_REST_ENDPOINT: https://localhost:8081/
|
||||
MINT_LND_REST_CERT: ./regtest/data/lnd-3/tls.cert
|
||||
MINT_LND_REST_MACAROON: ./regtest/data/lnd-3/data/chain/bitcoin/regtest/admin.macaroon
|
||||
# LndRPCWallet
|
||||
MINT_LND_RPC_ENDPOINT: localhost:10009
|
||||
MINT_LND_RPC_CERT: ./regtest/data/lnd-3/tls.cert
|
||||
MINT_LND_RPC_MACAROON: ./regtest/data/lnd-3/data/chain/bitcoin/regtest/admin.macaroon
|
||||
# CoreLightningRestWallet
|
||||
MINT_CORELIGHTNING_REST_URL: https://localhost:3001
|
||||
MINT_CORELIGHTNING_REST_MACAROON: ./regtest/data/clightning-2-rest/access.macaroon
|
||||
MINT_CORELIGHTNING_REST_CERT: ./regtest/data/clightning-2-rest/certificate.pem
|
||||
# CLNRestWallet
|
||||
MINT_CLNREST_URL: https://localhost:3010
|
||||
MINT_CLNREST_RUNE: ./regtest/data/clightning-2/rune
|
||||
MINT_CLNREST_CERT: ./regtest/data/clightning-2/regtest/ca.pem
|
||||
run: |
|
||||
sudo chmod -R 777 .
|
||||
make test-wallet
|
||||
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v3
|
||||
2
.github/workflows/tests_keycloak_auth.yml
vendored
2
.github/workflows/tests_keycloak_auth.yml
vendored
@@ -67,7 +67,7 @@ jobs:
|
||||
MINT_AUTH_OICD_DISCOVERY_URL: http://localhost:8080/realms/nutshell/.well-known/openid-configuration
|
||||
MINT_AUTH_OICD_CLIENT_ID: cashu-client
|
||||
run: |
|
||||
poetry run pytest tests/test_wallet_auth.py -v --cov=mint --cov-report=xml
|
||||
poetry run pytest tests/wallet/test_wallet_auth.py -v --cov=mint --cov-report=xml
|
||||
|
||||
- name: Stop and clean up Docker Compose
|
||||
run: |
|
||||
|
||||
2
.github/workflows/tests_redis_cache.yml
vendored
2
.github/workflows/tests_redis_cache.yml
vendored
@@ -53,7 +53,7 @@ jobs:
|
||||
MINT_REDIS_CACHE_ENABLED: true
|
||||
MINT_REDIS_CACHE_URL: redis://localhost:6379
|
||||
run: |
|
||||
poetry run pytest tests/test_mint_api_cache.py -v --cov=mint --cov-report=xml
|
||||
poetry run pytest tests/mint/test_mint_api_cache.py -v --cov=mint --cov-report=xml
|
||||
|
||||
- name: Stop and clean up Docker Compose
|
||||
run: |
|
||||
|
||||
Reference in New Issue
Block a user