diff --git a/.github/workflows/integration.yaml b/.github/workflows/integration.yaml index 2f8186221f9..62c3ff13a2b 100644 --- a/.github/workflows/integration.yaml +++ b/.github/workflows/integration.yaml @@ -167,3 +167,64 @@ jobs: unicode \ unicode/utf16 \ unicode/utf8 + + + wasi-testsuite: + name: wasi-testsuite + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-20.04, macos-12, windows-2022] + + steps: + - uses: actions/cache@v3 + id: cache + with: + path: + ~/.cache/go-build + key: integration-test-wasi-testsuite-${{ env.GO_VERSION }} + + - uses: actions/setup-go@v3 + with: + go-version: ${{ env.GO_VERSION }} + + - name: Checkout wazero + uses: actions/checkout@v3 + + - name: Install wazero + run: | + go install ./cmd/wazero + shell: bash + + - name: Checkout wasi-testsuite + uses: actions/checkout@v3 + with: + repository: evacchi/wasi-testsuite + ref: gha/wazero-win + + - name: Initialize Python environment + uses: actions/setup-python@v4 + with: + python-version: '3.10' + cache: pip + + - name: Install dependencies + working-directory: test-runner + run: | + pip install -r requirements/dev.txt + shell: bash + + - name: Run all wasi-testsuite (Windows) + if: runner.os == 'Windows' + env: + TEST_SHELL_RUNNER: 'C:\Program Files\Git\bin\bash.EXE' + run: | + python3 test-runner/wasi_test_runner.py -t ./tests/assemblyscript/testsuite/ ./tests/c/testsuite/ -r adapters/wazero.sh + shell: bash + + - name: Run all wasi-testsuite + if: runner.os != 'Windows' + run: | + python3 test-runner/wasi_test_runner.py -t ./tests/assemblyscript/testsuite/ ./tests/c/testsuite/ -r adapters/wazero.sh + shell: bash +