name: Test

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
      with:
        fetch-depth: 0
    - name: Set up Python
      uses: actions/setup-python@v5
      with:
        python-version: 3.11
        cache: pip
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        python -m pip install -r requirements.txt
    - name: Run tests
      run: |
        bash bin/test.sh
    - name: Update release branch
      if: github.ref == 'refs/heads/main'
      run: |
        git config --local user.email "[hidden]"
        git config --local user.name "CI"
        git fetch origin
        git checkout -b release origin/release
        git merge origin/main -X theirs
        git push origin release