mirror of
https://github.com/tlsnotary/tlsn-js.git
synced 2026-04-02 03:00:18 -04:00
Use Playwright to test demos (#106)
* Run tests and demos with playwright * ci: renamed workflow * Improved demo readmes * Use a separate page for each test
This commit is contained in:
31
.github/workflows/ci.yaml
vendored
31
.github/workflows/ci.yaml
vendored
@@ -5,12 +5,6 @@ on:
|
||||
release:
|
||||
types: [published]
|
||||
|
||||
env:
|
||||
LOCAL-NOTARY: true
|
||||
LOCAL-WS: false
|
||||
HEADLESS: true
|
||||
PUPPETEER_SKIP_DOWNLOAD: true
|
||||
|
||||
jobs:
|
||||
build-and-test:
|
||||
name: Build and test
|
||||
@@ -37,7 +31,7 @@ jobs:
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 18
|
||||
node-version: 20
|
||||
cache: 'npm'
|
||||
|
||||
- name: Install stable nightly toolchain
|
||||
@@ -61,27 +55,18 @@ jobs:
|
||||
|
||||
- name: Build
|
||||
run: npm run build
|
||||
|
||||
|
||||
- name: Lint
|
||||
run: npm run lint
|
||||
|
||||
- name: Install Chrome
|
||||
uses: browser-actions/setup-chrome@v1
|
||||
id: setup-chrome
|
||||
with:
|
||||
chrome-version: 121.0.6167.85
|
||||
|
||||
- name: Set CHROME_PATH environment variable
|
||||
run: echo "CHROME_PATH=${{ steps.setup-chrome.outputs['chrome-path'] }}" >> $GITHUB_ENV
|
||||
- name: install wstcp
|
||||
run: cargo install wstcp
|
||||
|
||||
- name: Install Chromium (Playwright)
|
||||
run: npx playwright install --with-deps chromium
|
||||
|
||||
- name: Test
|
||||
run: |
|
||||
# Install wstcp and use it in the background
|
||||
cargo install wstcp
|
||||
wstcp --bind-addr 127.0.0.1:55688 raw.githubusercontent.com:443 &
|
||||
WSTCP_PID=$!
|
||||
trap "kill $WSTCP_PID" EXIT
|
||||
npm run test
|
||||
run: npm run test
|
||||
|
||||
- name: Determine release type (dry-run or publish)
|
||||
run: |
|
||||
|
||||
54
.github/workflows/playwright.yml
vendored
Normal file
54
.github/workflows/playwright.yml
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
name: Tests demos
|
||||
on:
|
||||
pull_request:
|
||||
jobs:
|
||||
test:
|
||||
timeout-minutes: 60
|
||||
name: Tests demos
|
||||
runs-on: ubuntu-latest
|
||||
services:
|
||||
notary-server:
|
||||
image: ghcr.io/tlsnotary/tlsn/notary-server:v0.1.0-alpha.10
|
||||
env:
|
||||
NOTARY_SERVER__TLS__ENABLED: false
|
||||
ports:
|
||||
- 7047:7047
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: lts/*
|
||||
- name: build tlsn-js
|
||||
run: npm ci; npm run build
|
||||
- name: install wstcp
|
||||
run: cargo install wstcp
|
||||
- name: Install Chromium (Playwright)
|
||||
run: npx playwright install --with-deps chromium
|
||||
- name: Test react demo
|
||||
working-directory: demo/react-ts-webpack
|
||||
continue-on-error: true
|
||||
run: |
|
||||
set -e
|
||||
npm i
|
||||
npm run test
|
||||
- name: Test interactive verifier demo
|
||||
continue-on-error: true
|
||||
run: |
|
||||
set -e
|
||||
cd demo/interactive-demo/verifier-rs
|
||||
cargo build --release
|
||||
cd ../prover-ts
|
||||
npm i
|
||||
npm run test
|
||||
- name: Test web-to-web p2p demo
|
||||
working-directory: demo/react-ts-webpack
|
||||
continue-on-error: true
|
||||
run: |
|
||||
set -e
|
||||
npm run test
|
||||
- uses: actions/upload-artifact@v4
|
||||
if: ${{ !cancelled() }}
|
||||
with:
|
||||
name: playwright-report
|
||||
path: '**/playwright-report/'
|
||||
retention-days: 30
|
||||
Reference in New Issue
Block a user