Skip to content

Merge pull request #236 from jhlegarreta/FixFloatingPointFormatting2 #371

Merge pull request #236 from jhlegarreta/FixFloatingPointFormatting2

Merge pull request #236 from jhlegarreta/FixFloatingPointFormatting2 #371

Workflow file for this run

name: test, package
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
# max-parallel: 6
matrix:
os: [ubuntu-latest]
python-version: ['3.8', '3.9', '3.10', '3.11']
requires: ['minimal', 'latest']
steps:
- name: Check out repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Set min. dependencies
if: matrix.requires == 'minimal'
run: |
python -c "req = open('requirements.txt').read().replace(' >= ', ' == ') ; open('requirements.txt', 'w').write(req)"
python -c "req = open('requirements_dev.txt').read().replace(' >= ', ' == ') ; open('requirements_dev.txt', 'w').write(req)"
python -c "req = open('setup.py').read().replace(' >= ', ' == ') ; open('setup.py', 'w').write(req)"
# - name: Cache pip
# uses: actions/cache@v4
# id: cache
# with:
# path: ${{ env.pythonLocation }}
# # Look to see if there is a cache hit for the corresponding requirements files
# key: ${{ env.pythonLocation }}-${{ hashFiles('requirements/*') }}
# restore-keys: |
# ${{ env.pythonLocation }}-
- name: Install dependencies
# if: steps.cache.outputs.cache-hit != 'true'
run: |
python -m pip install --upgrade --user pip setuptools pytest-cov
pip install -r requirements_dev.txt
python --version
pip --version
pip list
- name: Run tests
run: |
# tox --sitepackages
pip install -e .
python -c 'import whitematteranalysis'
coverage run --source whitematteranalysis -m pytest -o junit_family=xunit2 -v --doctest-modules --junitxml=junit/test-results-${{ runner.os }}-${{ matrix.python-version }}.xml
- name: Upload pytest test results
uses: actions/upload-artifact@v4
with:
name: pytest-results-${{ runner.os }}-${{ matrix.python-version }}-${{ matrix.requires }}
path: junit/test-results-${{ runner.os }}-${{ matrix.python-version }}.xml
# Use always() to always run this step to publish test results when there are test failures
if: always()
- name: Statistics
if: success()
run: |
coverage report
- name: Package Setup
# - name: Run tests with tox
run: |
# pip install build
# check-manifest
python setup.py install
# twine check dist/
# tox --sitepackages
# python -m tox