Skip to content

Multiplatform TS bindings test #1652

Multiplatform TS bindings test

Multiplatform TS bindings test #1652

Workflow file for this run

name: bindings typescript
on:
push:
branches: [main, release/**]
pull_request:
jobs:
test:
name: test generated libraries
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest-16-cores, macos-latest, windows-latest-8-cores]
runs-on: ${{ matrix.os }}
# services:
# rpc:
# image: stellar/quickstart:testing
# ports:
# - 8000:8000
# env:
# ENABLE_LOGS: true
# NETWORK: local
# ENABLE_SOROBAN_RPC: true
# options: >-
# --health-cmd "curl --no-progress-meter --fail-with-body -X POST \"http://localhost:8000/soroban/rpc\" -H 'Content-Type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":8675309,\"method\":\"getNetwork\"}' && curl --no-progress-meter \"http://localhost:8000/friendbot\" | grep '\"invalid_field\": \"addr\"'"
# --health-interval 10s
# --health-timeout 5s
# --health-retries 50
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
with:
path: |
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Setup docker (missing on MacOS)
if: runner.os == 'macos'
run: |
brew install docker
brew install colima
colima start
- name: Run quickstart
run: |
docker run -d --name quickstart \
-p 8000:8000 -e ENABLE_LOGS=true -e NETWORK=local -e ENABLE_SOROBAN_RPC=true \
--health-cmd "curl --no-progress-meter --fail-with-body -X POST \"http://localhost:8000/soroban/rpc\" -H 'Content-Type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":8675309,\"method\":\"getNetwork\"}' && curl --no-progress-meter \"http://localhost:8000/friendbot\" | grep '\"invalid_field\": \"addr\"'" \
--health-interval 10s \
--health-timeout 5s \
--health-retries 50 \
stellar/quickstart:testing
until [ "`docker inspect -f {{.State.Health.Status}} quickstart`"=="healthy" ]; do
sleep 0.1;
done;
- run: rustup update
- run: cargo build
- run: rustup target add wasm32-unknown-unknown
- run: make build-test-wasms
- run: npm ci && npm run test
working-directory: cmd/crates/soroban-spec-typescript/ts-tests