# Tests whether Quarto can successfully bundle and run the bundled javascript.
# If this test fails, the release version of Quarto will error when run since
# bundling has failed.
name: Bundle Test
on:
  workflow_dispatch:
  pull_request:
    branches: [main]
  push:
    # only trigger on branches, not on tags
    branches: [main]

jobs:
  test-bundle:
    runs-on: ubuntu-latest
    if: github.event_name != 'schedule' || (github.event_name == 'schedule' && github.repository == 'quarto-dev/quarto-cli')
    steps:
      - name: Checkout Repo
        uses: actions/checkout@v6
        with:
          # checkout full tree
          fetch-depth: 0

      - name: Set Path
        shell: bash
        run: |
          echo "$HOME/bin" >> $GITHUB_PATH

      - name: Configure Quarto
        uses: ./.github/workflows/actions/quarto-dev

      - name: Test Bundle
        shell: bash
        run: |
          pushd package/src
          ./quarto-bld prepare-dist --set-version $(cat ../../version.txt)
          mv ../../src/quarto.ts ../../src/quarto1.ts
          pushd ../pkg-working/bin
          ./quarto check

      - name: Validate Bundle
        shell: bash
        run: |
          pushd package/src
          ./quarto-bld validate-bundle
