docs: rewrite README introduction and structure #8
This file contains hidden or 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: Tests | |
| on: | |
| push: | |
| branches: [ master, main ] | |
| pull_request: | |
| branches: [ master, main ] | |
| jobs: | |
| test: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20.x' | |
| cache: 'npm' | |
| - uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.vscode-test | |
| node_modules | |
| key: ${{ runner.os }}-vscode-node-${{ hashFiles('**/package-lock.json') }} | |
| - run: npm ci | |
| - name: Install Xvfb (Linux) | |
| if: runner.os == 'Linux' | |
| run: sudo apt-get update && sudo apt-get install -y xvfb libgtk-3-0 | |
| - run: npm run check-types | |
| - run: npm run lint | |
| - run: npm run compile | |
| - name: Unit tests with coverage (Windows) | |
| if: runner.os == 'Windows' | |
| run: npm run test:unit:coverage | |
| - name: Unit tests with coverage (Linux) | |
| if: runner.os == 'Linux' | |
| run: xvfb-run -a npm run test:unit:coverage | |
| - name: Integration tests (Windows) | |
| if: runner.os == 'Windows' | |
| run: npm run test:integration | |
| continue-on-error: true | |
| - name: Integration tests (Linux) | |
| if: runner.os == 'Linux' | |
| run: xvfb-run -a npm run test:integration | |
| continue-on-error: true | |
| - name: Upload coverage | |
| uses: codecov/codecov-action@v4 | |
| if: always() | |
| with: | |
| files: ./coverage/coverage-final.json | |
| env: | |
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} |