name: PDF Splitter Python Sample
on:
  push:
    branches:
      - main
    paths:
      - "pdf-splitter-python/**"
  pull_request:
    branches:
      - main
    paths:
      - "pdf-splitter-python/**"
permissions: read-all
jobs:
  unit:
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./pdf-splitter-python
    strategy:
      matrix:
        python: ["3.7", "3.8", "3.9", "3.10"]
    steps:
      - name: Checkout
        uses: actions/checkout@v4
      - name: Setup Python
        uses: actions/setup-python@v5
        with:
          python-version: ${{ matrix.python }}
      - name: Install dependencies
        run: |
          python -m pip install --upgrade pip
          pip install -r requirements.txt
      - name: Install pylint
        run: |
          python -m pip install --upgrade pip
          python -m pip install pylint
      - name: Analyze code with pylint
        run: |
          pylint ./**.py
      - name: Run unit tests
        run: |
          python main_test.py