fix: Make pollForResponse typesafe to avoid exceptions from unknown requests #1690
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: E2E Node Tests | |
on: | |
pull_request: | |
types: | |
- opened | |
- reopened | |
- edited | |
- synchronize | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-20.04] | |
ghc: ['8.8.4'] | |
spec: | |
- '0.16.1' | |
node: | |
- 20 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use Node.js ${{ matrix.node }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node }} | |
- name: Cache node modules | |
id: cache-npm | |
uses: actions/cache@v4 | |
env: | |
cache-name: cache-node-modules | |
with: | |
# npm cache files are stored in `~/.npm` on Linux/macOS | |
path: ~/.npm | |
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-build-${{ env.cache-name }}- | |
${{ runner.os }}-build- | |
${{ runner.os }}- | |
- if: ${{ steps.cache-npm.outputs.cache-hit != 'true' }} | |
name: List the state of node modules | |
continue-on-error: true | |
run: npm list | |
- run: npm ci | |
- run: npm run build -ws | |
# build monorepo incl. each subpackage | |
- run: npm run build --workspaces --if-present | |
- uses: dfinity/setup-dfx@main | |
- name: running dfx | |
id: dfx | |
run: | | |
dfx start --background | |
- name: deploy canisters | |
run: | | |
dfx deploy counter | |
dfx deploy trap | |
- name: Node.js e2e tests | |
run: npm run e2e --workspace e2e/node | |
env: | |
CI: true | |
REPLICA_PORT: 4943 | |
aggregate: | |
name: e2e:required | |
if: ${{ always() }} | |
needs: [test] | |
runs-on: ubuntu-latest | |
steps: | |
- name: check e2e test result | |
if: ${{ needs.test.result != 'success' }} | |
run: exit 1 |