name: Release Script Tests

on:
  # workflow_call is used to indicate that a workflow can be called by another workflow.
  workflow_call:
  pull_request:
    types: [opened, synchronize, reopened, ready_for_review]
    paths-ignore:
      - '**.md'
      - 'docs/**'
  push:
    branches:
      - main
    paths-ignore:
      - '**.md'
      - 'docs/**'

permissions:
  contents: read

jobs:
  release-script-test:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./tools/release

    steps:
      - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

      - name: Prepare Python
        uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5.6.0
        with:
          cache: 'pip' # caching pip dependencies

      - name: Install dependencies
        run: pip install -r requirements.txt

      - name: Run tests
        run: pytest -v
