Skip to content

Merge pull request #94 from barseghyanartur/dev #1009

Merge pull request #94 from barseghyanartur/dev

Merge pull request #94 from barseghyanartur/dev #1009

Workflow file for this run

name: test
on:
push:
pull_request:
types: [review_requested, ready_for_review]
jobs:
# *************************************
# ************* Pre-commit ************
# *************************************
pre-commit:
name: pre-commit ${{ matrix.python-version }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
max-parallel: 5
matrix:
os:
- ubuntu-22.04
python-version:
# - "3.11"
- "3.10"
# - "3.9"
# - "3.8"
# - "3.7"
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# cache: 'pip'
# cache-dependency-path: '**/setup.py'
- name: Install detect-secrets
run: pip install --no-cache-dir detect-secrets doc8 isort==5.11.5
- name: Run pre-commit
uses: pre-commit/[email protected]
# *************************************
# *********** Additional tests ********
# *************************************
test-sqlalchemy-integration:
needs: pre-commit
name: test-sqlalchemy-integration ${{ matrix.python-version }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
max-parallel: 5
matrix:
os:
- ubuntu-22.04
# - Windows
# - MacOs
python-version:
- "3.11"
- "3.10"
# - "3.9"
# - "3.8"
# - "3.7"
steps:
- name: Install wkhtmltopdf
run: sudo apt-get update && sudo apt-get install -y wkhtmltopdf libpango-1.0-0 libharfbuzz0b libpangoft2-1.0-0 poppler-utils
- name: Clean-up
run: sudo apt clean && sudo apt autoclean && sudo rm -rf /tmp/* && sudo rm -rf /usr/share/dotnet && sudo rm -rf /opt/ghc && sudo rm -rf "/usr/local/share/boost" && sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# cache: 'pip'
# cache-dependency-path: '**/examples/requirements/flask.txt'
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
- name: Install tox
run: |
python -m pip install --no-cache-dir tox-gh-actions uv Django djangorestframework django-extensions drf_spectacular
- name: Compile requirements
run: uv pip compile examples/requirements/flask.in --no-strip-extras
- name: Install requirements
run: pip install --no-cache-dir -r examples/requirements/flask.txt
- name: Run test suite
# continue-on-error: true
run: pytest -vrx src/faker_file/tests/test_sqlalchemy_integration.py #--workers 2
env:
PYTEST_ADDOPTS: "-vv --durations=10"
test-augmented-file-from-dir-provider:
needs: pre-commit
name: test-augmented-file-from-dir-provider ${{ matrix.python-version }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
max-parallel: 5
matrix:
os:
- ubuntu-22.04
# - Windows
# - MacOs
python-version:
- "3.11"
- "3.10"
- "3.9"
# - "3.8"
# - "3.7"
steps:
- name: Install wkhtmltopdf
run: sudo apt-get update && sudo apt-get install -y wkhtmltopdf libpango-1.0-0 libharfbuzz0b libpangoft2-1.0-0 poppler-utils
- name: Clean-up
run: sudo apt clean && sudo apt autoclean && sudo rm -rf /tmp/* && sudo rm -rf /usr/share/dotnet && sudo rm -rf /opt/ghc && sudo rm -rf "/usr/local/share/boost" && sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# cache: 'pip'
# cache-dependency-path: '**/examples/requirements/ml.txt'
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
- name: Install tox
run: |
python -m pip install --no-cache-dir tox-gh-actions uv Django djangorestframework django-extensions drf_spectacular
# - name: Remove compiled requirements
# run: rm examples/requirements/ml.txt
- name: Compile requirements
run: uv pip compile examples/requirements/ml.in --no-strip-extras -o examples/requirements/ml.txt
# - name: Install package
# run: pip install .[all]
- name: Install requirements
run: pip install --no-cache-dir -r examples/requirements/ml.txt
- name: Run test suite
# continue-on-error: true
run: pytest -vrx src/faker_file/tests/test_augment_file_from_dir_provider.py #--workers 2
env:
PYTEST_ADDOPTS: "-vv --durations=10"
- name: Coveralls
id: coveralls-setup
continue-on-error: true
uses: AndreMiras/coveralls-python-action@develop
with:
parallel: true
flag-name: Run Tests
# *************************************
# ************* Main tests ************
# *************************************
# Since tox is used, it already covers testing of various Python versions
# therefore, there's no need to have run tox tests multiple times. Just once
# is fairly sufficient.
test:
needs: pre-commit
name: test ${{ matrix.python-version }} - ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
max-parallel: 5
matrix:
os:
- ubuntu-22.04
# - Windows
# - MacOs
python-version:
- "3.11"
# - "3.10"
# - "3.9"
# - "3.8"
# - "3.7"
steps:
- name: Install wkhtmltopdf
run: sudo apt-get update && sudo apt-get install -y wkhtmltopdf libpango-1.0-0 libharfbuzz0b libpangoft2-1.0-0 poppler-utils
- name: Clean-up
run: sudo apt clean && sudo apt autoclean && sudo rm -rf /tmp/* && sudo rm -rf /usr/share/dotnet && sudo rm -rf /opt/ghc && sudo rm -rf "/usr/local/share/boost" && sudo rm -rf "$AGENT_TOOLSDIRECTORY"
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
# cache: 'pip'
# cache-dependency-path: '**/examples/requirements/django_*.txt'
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
- name: Install tox
run: python -m pip install --no-cache-dir tox-gh-actions
- name: Run test suite
run: tox -r #--parallel auto
env:
PYTEST_ADDOPTS: "-vv --durations=10"
- name: Coveralls
id: coveralls-setup
continue-on-error: true
uses: AndreMiras/coveralls-python-action@develop
with:
parallel: true
flag-name: Run Tests
# *************************************
# ************** Coveralls ************
# *************************************
coveralls_finish:
name: coveralls_finish
needs: test
runs-on: ubuntu-latest
steps:
- name: Install dependencies
run: |
python -m pip install pyyaml
- name: Coveralls Finished
id: coveralls-finish
continue-on-error: true
# if: steps.coveralls-setup.outcome == 'success'
env:
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
GITHUB_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
uses: AndreMiras/coveralls-python-action@develop
with:
parallel-finished: true
debug: True