# Python Misc unit tests
name: Python Misc

on:
  push:
    branches-ignore:
      - "dependabot/npm_and_yarn/**"
  pull_request:
    types: [synchronize, opened, reopened, ready_for_review]

jobs:
  python-lint:
    if: github.event.pull_request.draft == false
    runs-on: ubuntu-20.04
    strategy:
      matrix:
        python-version: [3.7]
    steps:
      - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
        uses: actions/checkout@v2
        with:
          persist-credentials: false
          submodules: recursive
      - name: Check if python changes are present
        id: check
        env:
          GITHUB_REPO: ${{ github.repository }}
          PR_NUMBER: ${{ github.event.pull_request.number }}
        continue-on-error: true
        run: ./scripts/ci_check_no_file_changes.sh python
      - name: Setup Python
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install dependencies
        if: steps.check.outcome == 'failure'
        uses: ./.github/actions/cached-dependencies
        with:
          run: |
            apt-get-install
            pip-upgrade
            pip install -r requirements/testing.txt
      - name: pylint
        if: steps.check.outcome == 'failure'
        # `-j 0` run Pylint in parallel
        run: pylint -j 0 superset

  pre-commit:
    if: github.event.pull_request.draft == false
    runs-on: ubuntu-20.04
    strategy:
      matrix:
        python-version: [3.7]
    steps:
      - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
        uses: actions/checkout@v2
        with:
          persist-credentials: false
          submodules: recursive
      - name: Setup Python
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install dependencies
        uses: ./.github/actions/cached-dependencies
        with:
          run: |
            apt-get-install
            pip-upgrade
            pip install -r requirements/integration.txt
      - name: pre-commit
        run: pre-commit run --all-files

  babel-extract:
    if: github.event.pull_request.draft == false
    runs-on: ubuntu-20.04
    strategy:
      matrix:
        python-version: [3.7]
    steps:
      - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )"
        uses: actions/checkout@v2
        with:
          persist-credentials: false
          submodules: recursive
      - name: Setup Python
        uses: actions/setup-python@v2
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install dependencies
        uses: ./.github/actions/cached-dependencies
        with:
          run: |
            apt-get-install
            pip-upgrade
            pip install -r requirements/base.txt
      - name: Test babel extraction
        run: flask fab babel-extract --target superset/translations --output superset/translations/messages.pot --config superset/translations/babel.cfg -k _,__,t,tn,tct
