Skip to content

Integration test

Integration test #53

name: "Integration test"
# NOTE: We're just running the tests that require earthdata login here; we
# don't distinguish between unit and integration tests yet.
on:
push:
branches:
- "main" # Releases
- "development" # PR merges
pull_request:
branches:
- "main" # Release pull requests
pull_request_review:
types:
- "submitted"
paths:
- ".github/**"
- "icepyx/**/*.py"
- "pyproject.toml"
- "requirements*.txt"
jobs:
test:
name: "Integration test"
# Job is conditional:
# - Do not run on PRs from forks
# - Do not run on `pull_request_review` events unless the PR is approved.
if: "${{ !github.event.pull_request.head.repo.fork && (github.event.action != 'pull_request_review' || github.event.review.state == 'approved') }}"
runs-on: "ubuntu-latest"
steps:
- uses: "actions/checkout@v4"
with:
fetch-depth: 0
- uses: "./.github/actions/install-icepyx"
with:
python-version: "3.12"
- name: "Run tests"
env:
EARTHDATA_PASSWORD: "${{ secrets.EARTHDATA_PASSWORD }}"
NSIDC_LOGIN: "${{ secrets.EARTHDATA_PASSWORD }}"
run: |
pytest icepyx/ --verbose --cov app \
icepyx/tests/test_behind_NSIDC_API_login.py \
icepyx/tests/test_auth.py
- name: "Upload coverage report"
uses: "codecov/[email protected]"
with:
token: "${{ secrets.CODECOV_TOKEN }}"