Skip to content

build: CI test bindings typescript-generated libs #11

build: CI test bindings typescript-generated libs

build: CI test bindings typescript-generated libs #11

Workflow file for this run

name: bindings typescript
on: [push, pull_request]
jobs:
test:
name: test generated libraries
runs-on: ubuntu-20.04
container:
image: stellar/quickstart:soroban-dev@sha256:a6b03cf6b0433c99f2f799b719f0faadbb79684b1b763e7674ba749fb0f648ee
volumes:
- ${{ github.workspace }}:/workspace
ports:
- 8000:8000
steps:
- name: Start RPC server
run: |
/start --logs --standalone --enable-soroban-rpc &
for attempt in {1..30}; do sleep 1; if curl "http://localhost:8000" 1> /dev/null 2>& 1; then echo Ready!; break; fi; echo -en "\r\033[KWaiting for server startup... $attempt "; done
- uses: actions/checkout@v3
- uses: stellar/actions/rust-cache@main
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
target: wasm32-unknown-unknown
- uses: awalsh128/cache-apt-pkgs-action@v1.3.0
with:
packages: build-essential
version: 1.0
- run: cargo install soroban-cli --version 0.9.4 # FIXME: install version in this branch; main's broken with quickstart currently
- run: make build-test-wasms
- run: soroban config network add standalone --rpc-url "http://localhost:8000/soroban/rpc" --network-passphrase "Standalone Network ; February 2017"
- run: soroban config identity generate alice
- run: curl "http://localhost:8000/friendbot?addr=$(soroban config identity address alice)"
- name: deploy contract
id: deploy-contract
run: echo "CONTRACT_ID=$(soroban contract deploy --wasm target/wasm32-unknown-unknown/test-wasms/test_custom_types.wasm --source alice --network standalone)" >> "$GITHUB_OUTPUT"
- name: generate lib
env:
CONTRACT_ID: ${{ steps.deploy-contract.outputs.CONTRACT_ID }}
run: soroban contract bindings typescript --wasm target/wasm32-unknown-unknown/test-wasms/test_custom_types.wasm --contract-id $CONTRACT_ID --network standalone --output-dir ./cmd/crates/soroban-spec-typescript/fixtures/test_custom_types --overwrite
- run: npm i && npm run test
working-directory: cmd/crates/soroban-spec-typescript/ts-tests