Skip to content

Added chat (#9)

Added chat (#9) #15

Workflow file for this run

name: Claude Runner Extension Tests
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]
workflow_dispatch:
jobs:
test-without-claude:
name: "Test Extension without Claude CLI"
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install system dependencies
run: make setup-ci
- name: Setup project
run: make setup
- name: Build and validate extension
run: |
make lint
make build-vsix
- name: Run tests without Claude CLI
run: |
make setup-test-env
make test-ci-without-claude
timeout-minutes: 15
- name: Upload VSIX artifact
uses: actions/upload-artifact@v4
with:
name: claude-runner.vsix
path: dist/*.vsix
retention-days: 1
test-with-claude:
name: "Test Extension with Claude CLI"
runs-on: ubuntu-latest
needs: test-without-claude
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install system dependencies
run: make setup-ci
- name: Setup project
run: make setup
- name: Download VSIX artifact
uses: actions/download-artifact@v4
with:
name: claude-runner.vsix
path: dist/
- name: Build extension for testing
run: make build
- name: Install and configure Claude CLI
run: |
make install-claude-cli
make setup-claude-config
- name: Run tests with Claude CLI
run: |
make setup-test-env
make test-ci-with-claude
timeout-minutes: 20
test-report:
name: "Generate Test Report"
runs-on: ubuntu-latest
needs: [test-without-claude, test-with-claude]
if: always()
steps:
- name: Generate Test Summary
run: |
echo "Claude Runner Extension Test Results" >> $GITHUB_STEP_SUMMARY
echo "=====================================" >> $GITHUB_STEP_SUMMARY
echo "" >> $GITHUB_STEP_SUMMARY
if [ "${{ needs.test-without-claude.result }}" == "success" ]; then
echo "Extension tests without Claude CLI - PASSED" >> $GITHUB_STEP_SUMMARY
else
echo "Extension tests without Claude CLI - FAILED" >> $GITHUB_STEP_SUMMARY
fi
if [ "${{ needs.test-with-claude.result }}" == "success" ]; then
echo "Extension tests with Claude CLI - PASSED" >> $GITHUB_STEP_SUMMARY
else
echo "Extension tests with Claude CLI - FAILED" >> $GITHUB_STEP_SUMMARY
fi
echo "" >> $GITHUB_STEP_SUMMARY
echo "Test Coverage:" >> $GITHUB_STEP_SUMMARY
echo "- Unit Tests" >> $GITHUB_STEP_SUMMARY
echo "- Main Window Loading Tests" >> $GITHUB_STEP_SUMMARY
echo "- Claude CLI Detection Tests" >> $GITHUB_STEP_SUMMARY
echo "- Claude CLI Integration Tests" >> $GITHUB_STEP_SUMMARY
echo "- End-to-End Workflow Tests" >> $GITHUB_STEP_SUMMARY