sync-fs and async-fs improvements (#217) #733
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: CI | |
| on: | |
| push: | |
| branches: ["main"] | |
| pull_request: | |
| branches: ["main"] | |
| # Allows you to run this workflow manually from the Actions tab | |
| workflow_dispatch: | |
| jobs: | |
| browser-macos: | |
| name: Test Browser on macOS | |
| runs-on: macos-latest | |
| env: | |
| GITHUB_ACTIONS_OUTPUT: "" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| browser: [safari] | |
| suite: [default, disabled, main] | |
| steps: | |
| - &checkout-branch | |
| name: Checkout Branch | |
| uses: actions/checkout@v5 | |
| - &setup-node | |
| name: Setup Node | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version-file: package.json | |
| cache: npm | |
| - &install-node-packages | |
| name: Install Node Packages | |
| run: npm ci | |
| - name: Run Tests | |
| run: | | |
| echo "Running in $BROWSER" | |
| npm run test:${{ matrix.browser }} -- ${{ matrix.suite }} | |
| browser-linux: | |
| name: Test Browser on Linux | |
| runs-on: ubuntu-latest | |
| env: | |
| GITHUB_ACTIONS_OUTPUT: "" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| browser: [chrome, firefox] | |
| suite: [default, disabled, main] | |
| steps: | |
| - *checkout-branch | |
| - *setup-node | |
| - *install-node-packages | |
| - name: Run Tests | |
| run: | | |
| echo "Running in $BROWSER" | |
| npm run test:${{ matrix.browser }} -- ${{ matrix.suite }} | |
| shell: | |
| name: Test Shell | |
| runs-on: ubuntu-latest | |
| env: | |
| GITHUB_ACTIONS_OUTPUT: "" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| shell: [jsc, spidermonkey, v8] | |
| suite: [default, disabled, main] | |
| steps: | |
| - *checkout-branch | |
| - *setup-node | |
| - *install-node-packages | |
| - name: Extract Week Number | |
| run: echo "WEEK_NUMBER=$(date +%W)" >> $GITHUB_ENV | |
| - name: Cache jsvu Binaries | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.jsvu | |
| key: ${{ runner.os }}-jsvu-${{ matrix.shell }}-week-${{ env.WEEK_NUMBER }} | |
| - name: Run Tests | |
| run: | | |
| echo "Running in $BROWSER" | |
| npm run test:${{ matrix.shell }} -- ${{ matrix.suite }} | |
| build: | |
| name: Test Build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Branch | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: ${{ github.event_name == 'pull_request' && 2 || 0 }} | |
| - *setup-node | |
| - *install-node-packages | |
| - name: Run Build | |
| run: | | |
| if ${{ github.event_name == 'pull_request' }}; then | |
| npm run test:build -- --diff="HEAD^...HEAD" | |
| else | |
| npm run test:build -- --diff="${{ github.event.before }}...${{ github.event.after }}" | |
| fi | |