Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions .github/workflows/pull-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,62 @@ jobs:
run: pnpm audit --audit-level=high
continue-on-error: false

e2e:
name: E2E Tests
runs-on: ubuntu-latest
needs: ci
steps:
- name: Harden Runner
uses: step-security/harden-runner@a90bcbc6539c36a85cdfeb73f7e2f433735f215b # v2.15.0
with:
egress-policy: block
allowed-endpoints: >
api.github.com:443
api.mcp.github.com:443
github.com:443
main.vscode-cdn.net:443
marketplace.visualstudio.com:443
redirector.gvt1.com:443
registry.npmjs.org:443
update.code.visualstudio.com:443
vscode.download.prss.microsoft.com:443
www.vscode-unpkg.net:443

- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Setup Node.js
uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0
with:
node-version-file: '.nvmrc'

- name: Install pnpm
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
with:
version: 10.30.3

- name: Get pnpm store directory
id: pnpm-store
shell: bash
run: echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- name: Cache pnpm store
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
path: ${{ steps.pnpm-store.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-

- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Build extension + webview
run: pnpm run compile && pnpm run webpack

- name: Run E2E tests
run: xvfb-run -a pnpm run test:e2e

react-doctor:
name: React Doctor
runs-on: ubuntu-latest
Expand Down
6 changes: 5 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,8 @@
"lint": "eslint .",
"test": "vitest run",
"test:coverage": "vitest run --coverage",
"test:watch": "vitest"
"test:watch": "vitest",
"test:e2e": "node ./out/test/e2e/runTest.js"
},
"dependencies": {
"@actions/workflow-parser": "0.3.44",
Expand Down Expand Up @@ -129,12 +130,14 @@
"devDependencies": {
"@eslint/js": "9.39.2",
"@tailwindcss/postcss": "4.2.0",
"@types/mocha": "10.0.10",
"@types/node": "24.10.12",
"@types/react": "19.2.14",
"@types/react-dom": "19.2.3",
"@types/vscode": "1.80.0",
"@vitejs/plugin-react": "5.1.4",
"@vitest/coverage-v8": "4.0.18",
"@vscode/test-electron": "2.5.2",
"@vscode/vsce": "3.7.1",
"autoprefixer": "10.4.24",
"css-loader": "7.1.3",
Expand All @@ -144,6 +147,7 @@
"fast-check": "4.5.3",
"globals": "17.3.0",
"mini-css-extract-plugin": "2.10.0",
"mocha": "^10.8.2",
"postcss": "8.5.6",
"postcss-loader": "8.2.0",
"tailwindcss": "4.2.0",
Expand Down
Loading
Loading